From db316f830df45e1b0229ebcbdb5feedc5eb23913 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Thu, 26 Apr 2012 10:44:45 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose removed hacks for object inventory folderview --- indra/newview/llpanelobjectinventory.cpp | 43 +++++++++++++------------------- 1 file changed, 18 insertions(+), 25 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 98ea680504..1efd1c3d9c 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -738,15 +738,7 @@ const std::string& LLTaskCategoryBridge::getDisplayName() const if (cat) { - // Localize "Contents" folder. - if (cat->getParentUUID().isNull() && cat->getName() == "Contents") - { - mDisplayName.assign(LLTrans::getString("ViewerObjectContents")); - } - else - { - mDisplayName.assign(cat->getName()); - } + mDisplayName.assign(cat->getName()); } return mDisplayName; @@ -1552,6 +1544,7 @@ void LLPanelObjectInventory::reset() p.parent_panel = this; p.tool_tip= LLTrans::getString("PanelContentsTooltip"); p.listener = LLTaskInvFVBridge::createObjectBridge(this, NULL); + p.folder_indentation = -14; // subtract space normally reserved for folder expanders mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" mFolders->getFilter()->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); @@ -1630,10 +1623,11 @@ void LLPanelObjectInventory::updateInventory() LLInventoryObject* inventory_root = objectp->getInventoryRoot(); LLInventoryObject::object_list_t contents; objectp->getInventoryContents(contents); - if (inventory_root) + mHaveInventory = TRUE; + + if (inventory_root && !contents.empty()) { createFolderViews(inventory_root, contents); - mHaveInventory = TRUE; mIsInventoryEmpty = FALSE; mFolders->setEnabled(TRUE); } @@ -1641,7 +1635,6 @@ void LLPanelObjectInventory::updateInventory() { // TODO: create an empty inventory mIsInventoryEmpty = TRUE; - mHaveInventory = TRUE; } } else @@ -1693,19 +1686,19 @@ void LLPanelObjectInventory::createFolderViews(LLInventoryObject* inventory_root bridge = LLTaskInvFVBridge::createObjectBridge(this, inventory_root); if(bridge) { - LLFolderViewFolder* new_folder = NULL; - LLFolderViewFolder::Params p; - p.name = inventory_root->getName(); - p.icon = LLUI::getUIImage("Inv_FolderClosed"); - p.icon_open = LLUI::getUIImage("Inv_FolderOpen"); - p.root = mFolders; - p.listener = bridge; - p.tool_tip = p.name; - new_folder = LLUICtrlFactory::create(p); - new_folder->addToFolder(mFolders, mFolders); - new_folder->toggleOpen(); - - createViewsForCategory(&contents, inventory_root, new_folder); + //LLFolderViewFolder* new_folder = NULL; + //LLFolderViewFolder::Params p; + //p.name = inventory_root->getName(); + //p.icon = LLUI::getUIImage("Inv_FolderClosed"); + //p.icon_open = LLUI::getUIImage("Inv_FolderOpen"); + //p.root = mFolders; + //p.listener = bridge; + //p.tool_tip = p.name; + //new_folder = LLUICtrlFactory::create(p); + //new_folder->addToFolder(mFolders, mFolders); + //new_folder->toggleOpen(); + + createViewsForCategory(&contents, inventory_root, mFolders); } } -- cgit v1.3 From 9940ca5ae7698e89c0587733f7ab922027c8ddcc Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 15 Jun 2012 09:44:27 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose llfolderview refactornig --- indra/llinventory/llinventory.cpp | 31 +- indra/llinventory/llinventory.h | 5 +- indra/llxuixml/llinitparam.h | 88 ++-- indra/newview/llavataractions.cpp | 27 +- indra/newview/llfloateroutbox.cpp | 13 +- indra/newview/llfolderview.cpp | 398 ++------------- indra/newview/llfolderview.h | 56 +-- indra/newview/llfoldervieweventlistener.h | 245 ++++++++- indra/newview/llfolderviewitem.cpp | 554 ++++++--------------- indra/newview/llfolderviewitem.h | 238 ++++----- indra/newview/llfriendcard.cpp | 4 +- indra/newview/llinventorybridge.cpp | 335 ++++++++----- indra/newview/llinventorybridge.h | 67 +-- indra/newview/llinventoryfilter.cpp | 181 +++---- indra/newview/llinventoryfilter.h | 145 ++++-- indra/newview/llinventorypanel.cpp | 234 ++++++--- indra/newview/llinventorypanel.h | 54 +- indra/newview/llpanellandmarks.cpp | 57 +-- indra/newview/llpanelmaininventory.cpp | 45 +- indra/newview/llpanelmarketplaceinbox.cpp | 12 +- indra/newview/llpanelmarketplaceinboxinventory.cpp | 5 +- indra/newview/llpanelmarketplaceinboxinventory.h | 4 +- .../newview/llpanelmarketplaceoutboxinventory.cpp | 2 +- indra/newview/llpanelobjectinventory.cpp | 26 +- indra/newview/llpaneloutfitedit.cpp | 30 +- indra/newview/llplacesinventorybridge.cpp | 43 +- indra/newview/llplacesinventorypanel.cpp | 3 +- indra/newview/llsidepanelappearance.cpp | 2 +- indra/newview/llsidepanelinventory.cpp | 7 +- indra/newview/llsidepanelinventory.h | 1 + indra/newview/lltexturectrl.cpp | 4 +- indra/newview/llviewerinventory.cpp | 23 +- indra/newview/llviewerinventory.h | 12 +- indra/newview/llviewermessage.cpp | 20 +- 34 files changed, 1456 insertions(+), 1515 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llinventory/llinventory.cpp b/indra/llinventory/llinventory.cpp index fbf23bc3f0..784e20ad46 100644 --- a/indra/llinventory/llinventory.cpp +++ b/indra/llinventory/llinventory.cpp @@ -275,6 +275,18 @@ void LLInventoryObject::correctInventoryName(std::string& name) LLStringUtil::truncate(name, DB_INV_ITEM_NAME_STR_LEN); } +time_t LLInventoryObject::getCreationDate() const +{ + return mCreationDate; +} + +void LLInventoryObject::setCreationDate(time_t creation_date_utc) +{ + mCreationDate = creation_date_utc; +} + + + ///---------------------------------------------------------------------------- /// Class LLInventoryItem @@ -297,9 +309,10 @@ LLInventoryItem::LLInventoryItem(const LLUUID& uuid, mDescription(desc), mSaleInfo(sale_info), mInventoryType(inv_type), - mFlags(flags), - mCreationDate(creation_date_utc) + mFlags(flags) { + mCreationDate = creation_date_utc; + LLStringUtil::replaceNonstandardASCII(mDescription, ' '); LLStringUtil::replaceChar(mDescription, '|', ' '); mPermissions.initMasks(inv_type); @@ -312,9 +325,9 @@ LLInventoryItem::LLInventoryItem() : mDescription(), mSaleInfo(), mInventoryType(LLInventoryType::IT_NONE), - mFlags(0), - mCreationDate(0) + mFlags(0) { + mCreationDate = 0; } LLInventoryItem::LLInventoryItem(const LLInventoryItem* other) : @@ -379,11 +392,6 @@ const std::string& LLInventoryItem::getDescription() const return mDescription; } -time_t LLInventoryItem::getCreationDate() const -{ - return mCreationDate; -} - U32 LLInventoryItem::getCRC32() const { // *FIX: Not a real crc - more of a checksum. @@ -440,11 +448,6 @@ void LLInventoryItem::setFlags(U32 flags) mFlags = flags; } -void LLInventoryItem::setCreationDate(time_t creation_date_utc) -{ - mCreationDate = creation_date_utc; -} - // Currently only used in the Viewer to handle calling cards // where the creator is actually used to store the target. void LLInventoryItem::setCreator(const LLUUID& creator) diff --git a/indra/llinventory/llinventory.h b/indra/llinventory/llinventory.h index a5cfe59bda..dc9a09e9d6 100644 --- a/indra/llinventory/llinventory.h +++ b/indra/llinventory/llinventory.h @@ -75,6 +75,7 @@ public: virtual LLAssetType::EType getType() const; LLAssetType::EType getActualType() const; // bypasses indirection for linked items BOOL getIsLinkType() const; + virtual time_t getCreationDate() const; //-------------------------------------------------------------------- // Mutators @@ -85,6 +86,7 @@ public: virtual void rename(const std::string& new_name); void setParent(const LLUUID& new_parent); void setType(LLAssetType::EType type); + virtual void setCreationDate(time_t creation_date_utc); // only stored for items private: // in place correction for inventory name string @@ -113,6 +115,7 @@ protected: LLUUID mParentUUID; // Parent category. Root categories have LLUUID::NULL. LLAssetType::EType mType; std::string mName; + time_t mCreationDate; // seconds from 1/1/1970, UTC }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -178,7 +181,6 @@ public: void setPermissions(const LLPermissions& perm); void setInventoryType(LLInventoryType::EType inv_type); void setFlags(U32 flags); - void setCreationDate(time_t creation_date_utc); void setCreator(const LLUUID& creator); // only used for calling cards // Check for changes in permissions masks and sale info @@ -224,7 +226,6 @@ protected: LLSaleInfo mSaleInfo; LLInventoryType::EType mInventoryType; U32 mFlags; - time_t mCreationDate; // seconds from 1/1/1970, UTC }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h index ce59401e87..d44ccac6e4 100644 --- a/indra/llxuixml/llinitparam.h +++ b/indra/llxuixml/llinitparam.h @@ -212,7 +212,7 @@ namespace LLInitParam {} ParamValue(const default_value_t& other) - : T(other), + : T(other), mValidated(false) {} @@ -632,38 +632,38 @@ namespace LLInitParam class BaseBlock* mCurrentBlockPtr; // pointer to block currently being constructed }; - //TODO: implement in terms of owned_ptr - template + //TODO: implement in terms of owned_ptr + template class LazyValue - { + { public: LazyValue() - : mPtr(NULL) - {} + : mPtr(NULL) + {} ~LazyValue() - { - delete mPtr; - } + { + delete mPtr; + } LazyValue(const T& value) - { + { mPtr = new T(value); } LazyValue(const LazyValue& other) : mPtr(NULL) - { + { *this = other; - } + } LazyValue& operator = (const LazyValue& other) { if (!other.mPtr) - { + { delete mPtr; - mPtr = NULL; - } + mPtr = NULL; + } else { if (!mPtr) @@ -674,9 +674,9 @@ namespace LLInitParam { *mPtr = *(other.mPtr); } - } - return *this; } + return *this; + } bool operator==(const LazyValue& other) const { @@ -684,13 +684,13 @@ namespace LLInitParam return *mPtr == *other.mPtr; } - bool empty() const - { - return mPtr == NULL; - } + bool empty() const + { + return mPtr == NULL; + } - void set(const T& other) - { + void set(const T& other) + { if (!mPtr) { mPtr = new T(other); @@ -701,36 +701,36 @@ namespace LLInitParam } } - const T& get() const - { + const T& get() const + { return *ensureInstance(); - } + } - T& get() - { + T& get() + { return *ensureInstance(); } operator const T&() const { return get(); - } + } - private: - // lazily allocate an instance of T - T* ensureInstance() const + private: + // lazily allocate an instance of T + T* ensureInstance() const + { + if (mPtr == NULL) { - if (mPtr == NULL) - { - mPtr = new T(); - } - return mPtr; - } + mPtr = new T(); + } + return mPtr; + } - private: + private: - mutable T* mPtr; - }; + mutable T* mPtr; + }; // root class of all parameter blocks @@ -2492,10 +2492,10 @@ namespace LLInitParam } EValueAge; typedef ParamValue derived_t; - typedef CustomParamValue self_t; - typedef Block block_t; + typedef CustomParamValue self_t; + typedef Block block_t; typedef T default_value_t; - typedef T value_t; + typedef T value_t; typedef void baseblock_base_class_t; diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index aa626a9a30..1d5543cd20 100755 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -711,23 +711,30 @@ namespace action_give_inventory //static std::set LLAvatarActions::getInventorySelectedUUIDs() { - std::set inventory_selected_uuids; + std::set inventory_selected; LLInventoryPanel* active_panel = action_give_inventory::get_active_inventory_panel(); if (active_panel) { - inventory_selected_uuids = active_panel->getRootFolder()->getSelectionList(); + inventory_selected= active_panel->getRootFolder()->getSelectionList(); } - if (inventory_selected_uuids.empty()) + if (inventory_selected.empty()) { LLSidepanelInventory *sidepanel_inventory = LLFloaterSidePanelContainer::getPanel("inventory"); if (sidepanel_inventory) { - inventory_selected_uuids = sidepanel_inventory->getInboxSelectionList(); + inventory_selected= sidepanel_inventory->getInboxSelectionList(); } } + std::set inventory_selected_uuids; + for (std::set::iterator it = inventory_selected.begin(), end_it = inventory_selected.end(); + it != end_it; + ++it) + { + inventory_selected_uuids.insert((*it)->getListener()->getUUID()); + } return inventory_selected_uuids; } @@ -758,15 +765,15 @@ bool LLAvatarActions::canShareSelectedItems(LLInventoryPanel* inv_panel /* = NUL // check selection in the panel LLFolderView* root_folder = inv_panel->getRootFolder(); - const std::set inventory_selected_uuids = root_folder->getSelectionList(); - if (inventory_selected_uuids.empty()) return false; // nothing selected + const std::set inventory_selected = root_folder->getSelectionList(); + if (inventory_selected.empty()) return false; // nothing selected bool can_share = true; - std::set::const_iterator it = inventory_selected_uuids.begin(); - const std::set::const_iterator it_end = inventory_selected_uuids.end(); + std::set::const_iterator it = inventory_selected.begin(); + const std::set::const_iterator it_end = inventory_selected.end(); for (; it != it_end; ++it) { - LLViewerInventoryCategory* inv_cat = gInventory.getCategory(*it); + LLViewerInventoryCategory* inv_cat = gInventory.getCategory((*it)->getListener()->getUUID()); // any category can be offered. if (inv_cat) { @@ -774,7 +781,7 @@ bool LLAvatarActions::canShareSelectedItems(LLInventoryPanel* inv_panel /* = NUL } // check if inventory item can be given - LLFolderViewItem* item = root_folder->getItemByID(*it); + LLFolderViewItem* item = *it; if (!item) return false; LLInvFVBridge* bridge = dynamic_cast(item->getListener()); if (bridge && bridge->canShare()) diff --git a/indra/newview/llfloateroutbox.cpp b/indra/newview/llfloateroutbox.cpp index c55970ad69..ba0f51b467 100644 --- a/indra/newview/llfloateroutbox.cpp +++ b/indra/newview/llfloateroutbox.cpp @@ -250,7 +250,8 @@ void LLFloaterOutbox::setupOutbox(const LLUUID& outboxId) mOutboxInventoryPanel->setShape(inventory_placeholder_rect); // Set the sort order newest to oldest - mOutboxInventoryPanel->setSortOrder(LLInventoryFilter::SO_FOLDERS_BY_NAME); + + mOutboxInventoryPanel->getViewModel()->setSorter(LLInventoryFilter::SO_FOLDERS_BY_NAME); mOutboxInventoryPanel->getFilter()->markDefault(); fetchOutboxContents(); @@ -386,7 +387,7 @@ BOOL LLFloaterOutbox::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, // Determine if the mouse is inside the inventory panel itself or just within the floater bool pointInInventoryPanel = false; bool pointInInventoryPanelChild = false; - LLFolderView * root_folder = mOutboxInventoryPanel->getRootFolder(); + LLFolderView* root_folder = mOutboxInventoryPanel->getRootFolder(); if (mOutboxInventoryPanel->getVisible()) { S32 inv_x, inv_y; @@ -443,10 +444,10 @@ void LLFloaterOutbox::onOutboxChanged() { llassert(!mOutboxId.isNull()); - if (mOutboxInventoryPanel) - { - mOutboxInventoryPanel->requestSort(); - } + //if (mOutboxInventoryPanel) + //{ + // mOutboxInventoryPanel->requestSort(); + //} fetchOutboxContents(); diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index f375443e38..ffef4ef69a 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -26,6 +26,7 @@ #include "llviewerprecompiledheaders.h" +#include "llfolderview.h" #include "llfolderview.h" #include "llcallbacklist.h" @@ -94,42 +95,6 @@ enum { F32 LLFolderView::sAutoOpenTime = 1.f; -void delete_selected_item(void* user_data); -void copy_selected_item(void* user_data); -void open_selected_items(void* user_data); -void properties_selected_items(void* user_data); -void paste_items(void* user_data); - - -//--------------------------------------------------------------------------- - -// Tells all folders in a folderview to sort their items -// (and only their items, not folders) by a certain function. -class LLSetItemSortFunction : public LLFolderViewFunctor -{ -public: - LLSetItemSortFunction(U32 ordering) - : mSortOrder(ordering) {} - virtual ~LLSetItemSortFunction() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); - - U32 mSortOrder; -}; - - -// Set the sort order. -void LLSetItemSortFunction::doFolder(LLFolderViewFolder* folder) -{ - folder->setItemSortOrder(mSortOrder); -} - -// Do nothing. -void LLSetItemSortFunction::doItem(LLFolderViewItem* item) -{ - return; -} - //--------------------------------------------------------------------------- // Tells all folders in a folderview to close themselves @@ -154,7 +119,6 @@ public: }; -// Set the sort order. void LLCloseAllFoldersFunctor::doFolder(LLFolderViewFolder* folder) { folder->setOpenArrangeRecursively(mOpen); @@ -173,7 +137,6 @@ LLFolderView::Params::Params() use_label_suffix("use_label_suffix"), allow_multiselect("allow_multiselect", true), show_empty_message("show_empty_message", true), - show_load_status("show_load_status", true), use_ellipses("use_ellipses", false) { folder_indentation = -4; @@ -183,7 +146,6 @@ LLFolderView::Params::Params() // Default constructor LLFolderView::LLFolderView(const Params& p) : LLFolderViewFolder(p), - mRunningHeight(0), mScrollContainer( NULL ), mPopupMenuHandle(), mAllowMultiSelect(p.allow_multiselect), @@ -210,17 +172,15 @@ LLFolderView::LLFolderView(const Params& p) mParentPanel(p.parent_panel), mUseEllipses(p.use_ellipses), mDraggingOverItem(NULL), - mStatusTextBox(NULL) + mStatusTextBox(NULL), + mViewModel(p.view_model) { mRoot = this; - mShowLoadStatus = p.show_load_status(); - LLRect rect = p.rect; LLRect new_rect(rect.mLeft, rect.mBottom + getRect().getHeight(), rect.mLeft + getRect().getWidth(), rect.mBottom); setRect( rect ); reshape(rect.getWidth(), rect.getHeight()); - mIsOpen = TRUE; // this view is always open. mAutoOpenItems.setDepth(AUTO_OPEN_STACK_DEPTH); mAutoOpenCandidate = NULL; mAutoOpenTimer.stop(); @@ -305,8 +265,6 @@ LLFolderView::~LLFolderView( void ) mItems.clear(); mFolders.clear(); - mItemMap.clear(); - delete mFilter; mFilter = NULL; } @@ -316,27 +274,6 @@ BOOL LLFolderView::canFocusChildren() const return FALSE; } -static LLFastTimer::DeclareTimer FTM_SORT("Sort Inventory"); - -void LLFolderView::setSortOrder(U32 order) -{ - if (order != mSortOrder) - { - LLFastTimer t(FTM_SORT); - - mSortOrder = order; - - sortBy(order); - arrangeAll(); - } -} - - -U32 LLFolderView::getSortOrder() const -{ - return mSortOrder; -} - BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) { // enforce sort order of My Inventory followed by Library @@ -348,7 +285,6 @@ BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) { mFolders.insert(mFolders.begin(), folder); } - folder->setShowLoadStatus(mShowLoadStatus); folder->setOrigin(0, 0); folder->reshape(getRect().getWidth(), 0); folder->setVisible(FALSE); @@ -375,128 +311,32 @@ void LLFolderView::openTopLevelFolders() } } -void LLFolderView::setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse) -{ - // call base class to do proper recursion - LLFolderViewFolder::setOpenArrangeRecursively(openitem, recurse); - // make sure root folder is always open - mIsOpen = TRUE; -} - -static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); - // This view grows and shrinks to enclose all of its children items and folders. +// mItemHeight = mDebugFilters ? LLFontGL::getFontMonospace()->getLineHeight() : 0; +// *width should be 0 +// conform show folder state works S32 LLFolderView::arrange( S32* unused_width, S32* unused_height, S32 filter_generation ) { - if (getListener()->getUUID().notNull()) - { - if (mNeedsSort) - { - mFolders.sort(mSortFunction); - mItems.sort(mSortFunction); - mNeedsSort = false; - } - } - - LLFastTimer t2(FTM_ARRANGE); - - filter_generation = mFilter->getMinRequiredGeneration(); mMinWidth = 0; + S32 target_height; - mHasVisibleChildren = hasFilteredDescendants(filter_generation); - // arrange always finishes, so optimistically set the arrange generation to the most current - mLastArrangeGeneration = getRoot()->getArrangeGeneration(); - - LLInventoryFilter::EFolderShow show_folder_state = - getRoot()->getFilter()->getShowFolderState(); - - S32 total_width = LEFT_PAD; - S32 running_height = mDebugFilters ? LLFontGL::getFontMonospace()->getLineHeight() : 0; - S32 target_height = running_height; - S32 parent_item_height = getRect().getHeight(); - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - LLFolderViewFolder* folderp = (*fit); - if (getDebugFilters()) - { - folderp->setVisible(TRUE); - } - else - { - folderp->setVisible(show_folder_state == LLInventoryFilter::SHOW_ALL_FOLDERS || // always show folders? - (folderp->getFiltered(filter_generation) || folderp->hasFilteredDescendants(filter_generation))); // passed filter or has descendants that passed filter - } - - if (folderp->getVisible()) - { - S32 child_height = 0; - S32 child_width = 0; - S32 child_top = parent_item_height - running_height; - - target_height += folderp->arrange( &child_width, &child_height, filter_generation ); - - mMinWidth = llmax(mMinWidth, child_width); - total_width = llmax( total_width, child_width ); - running_height += child_height; - folderp->setOrigin( ICON_PAD, child_top - (*fit)->getRect().getHeight() ); - } - } - - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - LLFolderViewItem* itemp = (*iit); - itemp->setVisible(itemp->getFiltered(filter_generation)); - - if (itemp->getVisible()) - { - S32 child_width = 0; - S32 child_height = 0; - S32 child_top = parent_item_height - running_height; - - target_height += itemp->arrange( &child_width, &child_height, filter_generation ); - itemp->reshape(itemp->getRect().getWidth(), child_height); - - mMinWidth = llmax(mMinWidth, child_width); - total_width = llmax( total_width, child_width ); - running_height += child_height; - itemp->setOrigin( ICON_PAD, child_top - itemp->getRect().getHeight() ); - } - } - - if(!mHasVisibleChildren)// is there any filtered items ? - { - //Nope. We need to display status textbox, let's reserve some place for it - running_height = mStatusTextBox->getTextPixelHeight(); - target_height = running_height; - } + LLFolderViewFolder::arrange(&mMinWidth, &target_height, mFilter->getFirstSuccessGeneration()); - mRunningHeight = running_height; LLRect scroll_rect = mScrollContainer->getContentWindowRect(); - reshape( llmax(scroll_rect.getWidth(), total_width), running_height ); + reshape( llmax(scroll_rect.getWidth(), mMinWidth), mCurHeight ); LLRect new_scroll_rect = mScrollContainer->getContentWindowRect(); if (new_scroll_rect.getWidth() != scroll_rect.getWidth()) { - reshape( llmax(scroll_rect.getWidth(), total_width), running_height ); + reshape( llmax(scroll_rect.getWidth(), mMinWidth), mCurHeight ); } // move item renamer text field to item's new position updateRenamerPosition(); - mTargetHeight = (F32)target_height; return llround(mTargetHeight); } -const std::string LLFolderView::getFilterSubString(BOOL trim) -{ - return mFilter->getFilterSubString(trim); -} - static LLFastTimer::DeclareTimer FTM_FILTER("Filter Inventory"); void LLFolderView::filter( LLInventoryFilter& filter ) @@ -525,7 +365,7 @@ void LLFolderView::reshape(S32 width, S32 height, BOOL called_from_parent) scroll_rect = mScrollContainer->getContentWindowRect(); } width = llmax(mMinWidth, scroll_rect.getWidth()); - height = llmax(mRunningHeight, scroll_rect.getHeight()); + height = llmax(mCurHeight, scroll_rect.getHeight()); // Restrict width within scroll container's width if (mUseEllipses && mScrollContainer) @@ -623,30 +463,6 @@ BOOL LLFolderView::setSelection(LLFolderViewItem* selection, BOOL openitem, return rv; } -void LLFolderView::setSelectionByID(const LLUUID& obj_id, BOOL take_keyboard_focus) -{ - LLFolderViewItem* itemp = getItemByID(obj_id); - if(itemp && itemp->getListener()) - { - itemp->arrangeAndSet(TRUE, take_keyboard_focus); - mSelectThisID.setNull(); - return; - } - else - { - // save the desired item to be selected later (if/when ready) - mSelectThisID = obj_id; - } -} - -void LLFolderView::updateSelection() -{ - if (mSelectThisID.notNull()) - { - setSelectionByID(mSelectThisID, false); - } -} - BOOL LLFolderView::changeSelection(LLFolderViewItem* selection, BOOL selected) { BOOL rv = FALSE; @@ -697,9 +513,6 @@ void LLFolderView::sanitizeSelection() // and we want to preserve context LLFolderViewItem* original_selected_item = getCurSelectedItem(); - // Cache "Show all folders" filter setting - BOOL show_all_folders = (getRoot()->getFilter()->getShowFolderState() == LLInventoryFilter::SHOW_ALL_FOLDERS); - std::vector items_to_remove; selected_items_t::iterator item_iter; for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end(); ++item_iter) @@ -710,20 +523,11 @@ void LLFolderView::sanitizeSelection() BOOL visible = item->potentiallyVisible(); // initialize from filter state for this item // modify with parent open and filters states LLFolderViewFolder* parent_folder = item->getParentFolder(); - if ( parent_folder ) + // Move up through parent folders and see what's visible + while(parent_folder) { - if ( show_all_folders ) - { // "Show all folders" is on, so this folder is visible - visible = TRUE; - } - else - { // Move up through parent folders and see what's visible - while(parent_folder) - { - visible = visible && parent_folder->isOpen() && parent_folder->potentiallyVisible(); - parent_folder = parent_folder->getParentFolder(); - } - } + visible = visible && parent_folder->isOpen() && parent_folder->potentiallyVisible(); + parent_folder = parent_folder->getParentFolder(); } // deselect item if any ancestor is closed or didn't pass filter requirements. @@ -816,15 +620,10 @@ void LLFolderView::clearSelection() mSelectThisID.setNull(); } -std::set LLFolderView::getSelectionList() const +std::set LLFolderView::getSelectionList() const { - std::set selection; - for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); - item_it != mSelectedItems.end(); - ++item_it) - { - selection.insert((*item_it)->getListener()->getUUID()); - } + std::set selection; + std::copy(mSelectedItems.begin(), mSelectedItems.end(), std::inserter(selection, selection.begin())); return selection; } @@ -862,7 +661,7 @@ void LLFolderView::draw() if (mDebugFilters) { std::string current_filter_string = llformat("Current Filter: %d, Least Filter: %d, Auto-accept Filter: %d", - mFilter->getCurrentGeneration(), mFilter->getMinRequiredGeneration(), mFilter->getMustPassGeneration()); + mFilter->getCurrentGeneration(), mFilter->getFirstSuccessGeneration(), mFilter->getFirstRequiredGeneration()); LLFontGL::getFontMonospace()->renderUTF8(current_filter_string, 0, 2, getRect().getHeight() - LLFontGL::getFontMonospace()->getLineHeight(), LLColor4(0.5f, 0.5f, 0.8f, 1.f), LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); @@ -901,25 +700,23 @@ void LLFolderView::draw() mSearchString.clear(); } - if (hasVisibleChildren() - || mFilter->getShowFolderState() == LLInventoryFilter::SHOW_ALL_FOLDERS) + if (hasVisibleChildren()) { mStatusText.clear(); mStatusTextBox->setVisible( FALSE ); } else if (mShowEmptyMessage) { - if (LLInventoryModelBackgroundFetch::instance().folderFetchActive() || mCompletedFilterGeneration < mFilter->getMinRequiredGeneration()) + if (LLInventoryModelBackgroundFetch::instance().folderFetchActive() || mCompletedFilterGeneration < mFilter->getFirstSuccessGeneration()) { + RN: Get this from filter mStatusText = LLTrans::getString("Searching"); } else { if (getFilter()) { - LLStringUtil::format_map_t args; - args["[SEARCH_TERM]"] = LLURI::escape(getFilter()->getFilterSubStringOrig()); - mStatusText = LLTrans::getString(getFilter()->getEmptyLookupMessage(), args); + mStatusText = getFilter()->getEmptyLookupMessage(); } } mStatusTextBox->setValue(mStatusText); @@ -963,7 +760,7 @@ void LLFolderView::finishRenamingItem( void ) closeRenamer(); - // List is re-sorted alphabeticly, so scroll to make sure the selected item is visible. + // List is re-sorted alphabetically, so scroll to make sure the selected item is visible. scrollToShowSelection(); } @@ -1074,8 +871,8 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL } else if (count > 1) { - LLDynamicArray listeners; - LLFolderViewEventListener* listener; + LLDynamicArray listeners; + LLFolderViewModelItemInventory* listener; LLFolderViewItem* last_item = items[count - 1]; LLFolderViewItem* new_selection = last_item->getNextOpenNode(FALSE); while(new_selection && new_selection->isSelected()) @@ -1102,12 +899,12 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL for(S32 i = 0; i < count; ++i) { listener = items[i]->getListener(); - if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) + if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) { listeners.put(listener); } } - listener = listeners.get(0); + listener = static_cast(listeners.get(0)); if(listener) { listener->removeBatch(listeners); @@ -1138,7 +935,7 @@ void LLFolderView::openSelectedItems( void ) // IT_{OBJECT,ATTACHMENT} creates LLProperties // floaters; others create LLPreviews. Put // each one in the right type of container. - LLFolderViewEventListener* listener = (*item_it)->getListener(); + LLFolderViewModelItemInventory* listener = (*item_it)->getListener(); bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); if (is_prop) LLFloater::setFloaterHost(multi_propertiesp); @@ -1294,7 +1091,7 @@ void LLFolderView::copy() S32 count = mSelectedItems.size(); if(getVisible() && getEnabled() && (count > 0)) { - LLFolderViewEventListener* listener = NULL; + LLFolderViewModelItemInventory* listener = NULL; selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { @@ -1318,7 +1115,7 @@ BOOL LLFolderView::canCut() const for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { const LLFolderViewItem* item = *selected_it; - const LLFolderViewEventListener* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getListener(); if (!listener || !listener->isItemRemovable()) { @@ -1335,7 +1132,7 @@ void LLFolderView::cut() S32 count = mSelectedItems.size(); if(getVisible() && getEnabled() && (count > 0)) { - LLFolderViewEventListener* listener = NULL; + LLFolderViewModelItemInventory* listener = NULL; selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { @@ -1363,7 +1160,7 @@ BOOL LLFolderView::canPaste() const { // *TODO: only check folders and parent folders of items const LLFolderViewItem* item = (*item_it); - const LLFolderViewEventListener* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getListener(); if(!listener || !listener->isClipboardPasteable()) { const LLFolderViewFolder* folderp = item->getParentFolder(); @@ -1391,7 +1188,7 @@ void LLFolderView::paste() for (selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { LLFolderViewItem* item = *selected_it; - LLFolderViewEventListener* listener = item->getListener(); + LLFolderViewModelItemInventory* listener = item->getListener(); if (listener->getInventoryType() != LLInventoryType::IT_CATEGORY) { item = item->getParentFolder(); @@ -1402,7 +1199,7 @@ void LLFolderView::paste() std::set::iterator set_iter; for(set_iter = folder_set.begin(); set_iter != folder_set.end(); ++set_iter) { - LLFolderViewEventListener* listener = (*set_iter)->getListener(); + LLFolderViewModelItemInventory* listener = (*set_iter)->getListener(); if(listener && listener->isClipboardPasteable()) { listener->pasteFromClipboard(); @@ -1845,7 +1642,7 @@ BOOL LLFolderView::handleRightMouseDown( S32 x, S32 y, MASK mask ) S32 count = mSelectedItems.size(); LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); if ( handled - && ( count > 0 && (hasVisibleChildren() || mFilter->getShowFolderState() == LLInventoryFilter::SHOW_ALL_FOLDERS) ) // show menu only if selected items are visible + && ( count > 0 && (hasVisibleChildren()) ) // show menu only if selected items are visible && menu ) { if (mCallbackRegistrar) @@ -2032,55 +1829,6 @@ void LLFolderView::setShowSingleSelection(BOOL show) } } -void LLFolderView::addItemID(const LLUUID& id, LLFolderViewItem* itemp) -{ - mItemMap[id] = itemp; -} - -void LLFolderView::removeItemID(const LLUUID& id) -{ - mItemMap.erase(id); -} - -LLFastTimer::DeclareTimer FTM_GET_ITEM_BY_ID("Get FolderViewItem by ID"); -LLFolderViewItem* LLFolderView::getItemByID(const LLUUID& id) -{ - LLFastTimer _(FTM_GET_ITEM_BY_ID); - if (id == getListener()->getUUID()) - { - return this; - } - - std::map::iterator map_it; - map_it = mItemMap.find(id); - if (map_it != mItemMap.end()) - { - return map_it->second; - } - - return NULL; -} - -LLFolderViewFolder* LLFolderView::getFolderByID(const LLUUID& id) -{ - if (id == getListener()->getUUID()) - { - return this; - } - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end(); - ++iter) - { - LLFolderViewFolder *folder = (*iter); - if (folder->getListener()->getUUID() == id) - { - return folder; - } - } - return NULL; -} - bool LLFolderView::doToSelected(LLInventoryModel* model, const LLSD& userdata) { std::string action = userdata.asString(); @@ -2111,7 +1859,7 @@ bool LLFolderView::doToSelected(LLInventoryModel* model, const LLSD& userdata) } - std::set selected_items = getSelectionList(); + std::set selected_items = getSelectionList(); LLMultiPreview* multi_previewp = NULL; LLMultiProperties* multi_propertiesp = NULL; @@ -2132,11 +1880,11 @@ bool LLFolderView::doToSelected(LLInventoryModel* model, const LLSD& userdata) LLFloater::setFloaterHost(multi_propertiesp); } - std::set::iterator set_iter; + std::set::iterator set_iter; for (set_iter = selected_items.begin(); set_iter != selected_items.end(); ++set_iter) { - LLFolderViewItem* folder_item = getItemByID(*set_iter); + LLFolderViewItem* folder_item = *set_iter; if(!folder_item) continue; LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getListener(); if(!bridge) continue; @@ -2486,72 +2234,18 @@ void LLFolderView::onRenamerLost() } } -LLInventoryFilter* LLFolderView::getFilter() +LLFolderViewFilter* LLFolderView::getFilter() { return mFilter; } -void LLFolderView::setFilterPermMask( PermissionMask filter_perm_mask ) -{ - mFilter->setFilterPermissions(filter_perm_mask); -} - -U32 LLFolderView::getFilterObjectTypes() const -{ - return mFilter->getFilterObjectTypes(); -} - -PermissionMask LLFolderView::getFilterPermissions() const -{ - return mFilter->getFilterPermissions(); -} - -BOOL LLFolderView::isFilterModified() -{ - return mFilter->isNotDefault(); -} - -void delete_selected_item(void* user_data) -{ - if(user_data) - { - LLFolderView* fv = reinterpret_cast(user_data); - fv->removeSelectedItems(); - } -} - -void copy_selected_item(void* user_data) -{ - if(user_data) - { - LLFolderView* fv = reinterpret_cast(user_data); - fv->copy(); - } -} - -void paste_items(void* user_data) -{ - if(user_data) - { - LLFolderView* fv = reinterpret_cast(user_data); - fv->paste(); - } -} - -void open_selected_items(void* user_data) -{ - if(user_data) - { - LLFolderView* fv = reinterpret_cast(user_data); - fv->openSelectedItems(); - } -} - -void properties_selected_items(void* user_data) +S32 LLFolderView::getItemHeight() { - if(user_data) + S32 debug_height = mDebugFilters ? LLFontGL::getFontMonospace()->getLineHeight() : 0; + if(!hasVisibleChildren()) { - LLFolderView* fv = reinterpret_cast(user_data); - fv->propertiesSelectedItems(); + //We need to display status textbox, let's reserve some place for it + return llmax(debug_height, mStatusTextBox->getTextPixelHeight()); } + return debug_height; } diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 9a6bf05cd1..15a3f662c4 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -47,9 +47,10 @@ #include "lltooldraganddrop.h" #include "llviewertexture.h" -class LLFolderViewEventListener; +class LLFolderViewModelInterface; class LLFolderViewFolder; class LLFolderViewItem; +class LLFolderViewFilter; class LLInventoryModel; class LLPanel; class LLLineEditor; @@ -76,8 +77,8 @@ public: Optional use_label_suffix, allow_multiselect, show_empty_message, - show_load_status, use_ellipses; + Mandatory view_model; Params(); }; @@ -88,9 +89,8 @@ public: virtual LLFolderView* getRoot() { return this; } - // FolderViews default to sort by name. This will change that, - // and resort the items if necessary. - void setSortOrder(U32 order); + LLFolderViewModelInterface* getViewModel() { return mViewModel; } + void setFilterPermMask(PermissionMask filter_perm_mask); typedef boost::signals2::signal& items, BOOL user_action)> signal_t; @@ -98,14 +98,7 @@ public: void setReshapeCallback(const signal_t::slot_type& cb) { mReshapeSignal.connect(cb); } // filter is never null - LLInventoryFilter* getFilter(); - const std::string getFilterSubString(BOOL trim = FALSE); - U32 getFilterObjectTypes() const; - PermissionMask getFilterPermissions() const; - // *NOTE: use getFilter()->getShowFolderState(); - //LLInventoryFilter::EFolderShow getShowFolderState(); - U32 getSortOrder() const; - BOOL isFilterModified(); + LLFolderViewFilter* getFilter(); bool getAllowMultiSelect() { return mAllowMultiSelect; } @@ -113,19 +106,18 @@ public: void closeAllFolders(); void openTopLevelFolders(); - virtual void toggleOpen() {}; - virtual void setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse); virtual BOOL addFolder( LLFolderViewFolder* folder); // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. virtual S32 arrange( S32* width, S32* height, S32 filter_generation ); + virtual S32 getItemHeight(); void arrangeAll() { mArrangeGeneration++; } S32 getArrangeGeneration() { return mArrangeGeneration; } - // applies filters to control visibility of inventory items - virtual void filter( LLInventoryFilter& filter); + // applies filters to control visibility of items + virtual void filter( LLFolderViewFilter& filter); // get the last selected item virtual LLFolderViewItem* getCurSelectedItem( void ); @@ -134,21 +126,15 @@ public: virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus); - // Used by menu callbacks - void setSelectionByID(const LLUUID& obj_id, BOOL take_keyboard_focus); - - // Called once a frame to update the selection if mSelectThisID has been set - void updateSelection(); - // This method is used to toggle the selection of an item. Walks // children, and keeps track of selected objects. virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); - virtual std::set getSelectionList() const; + virtual std::set getSelectionList() const; // make sure if ancestor is selected, descendents are not void sanitizeSelection(); - void clearSelection(); + virtual void clearSelection(); void addToSelectionList(LLFolderViewItem* item); void removeFromSelectionList(LLFolderViewItem* item); @@ -170,6 +156,7 @@ public: void autoOpenItem(LLFolderViewFolder* item); void closeAutoOpenedFolders(); BOOL autoOpenTest(LLFolderViewFolder* item); + BOOL isOpen() const { return TRUE; } // root folder always open // copy & paste virtual void copy(); @@ -218,11 +205,6 @@ public: F32 getSelectionFadeElapsedTime() { return mMultiSelectionFadeTimer.getElapsedTimeF32(); } bool getUseEllipses() { return mUseEllipses; } - void addItemID(const LLUUID& id, LLFolderViewItem* itemp); - void removeItemID(const LLUUID& id); - LLFolderViewItem* getItemByID(const LLUUID& id); - LLFolderViewFolder* getFolderByID(const LLUUID& id); - bool doToSelected(LLInventoryModel* model, const LLSD& userdata); void doIdle(); // Real idle routine @@ -267,6 +249,8 @@ protected: void onItemsRemovalConfirmation(const LLSD& notification, const LLSD& response); + LLInventorySort& getSortFunction() { return mSortFunction; } + protected: LLHandle mPopupMenuHandle; @@ -297,7 +281,7 @@ protected: LLFrameTimer mAutoOpenTimer; LLFrameTimer mSearchTimer; std::string mSearchString; - LLInventoryFilter* mFilter; + LLFolderViewFilter* mFilter; BOOL mShowSelectionContext; BOOL mShowSingleSelection; LLFrameTimer mMultiSelectionFadeTimer; @@ -307,14 +291,13 @@ protected: signal_t mReshapeSignal; S32 mSignalSelectCallback; S32 mMinWidth; - S32 mRunningHeight; - std::map mItemMap; BOOL mDragAndDropThisFrame; - LLUUID mSelectThisID; // if non null, select this item - LLPanel* mParentPanel; + LLInventorySort mSortFunction; + LLFolderViewModelInterface* mViewModel; + /** * Is used to determine if we need to cut text In LLFolderViewItem to avoid horizontal scroll. * NOTE: For now it uses only to cut LLFolderViewItem::mLabel text to be used for Landmarks in Places Panel. @@ -334,9 +317,6 @@ public: }; -bool sort_item_name(LLFolderViewItem* a, LLFolderViewItem* b); -bool sort_item_date(LLFolderViewItem* a, LLFolderViewItem* b); - // Flags for buildContextMenu() const U32 SUPPRESS_OPEN_ITEM = 0x1; const U32 FIRST_SELECTED_ITEM = 0x2; diff --git a/indra/newview/llfoldervieweventlistener.h b/indra/newview/llfoldervieweventlistener.h index aee31ca033..280708a39c 100644 --- a/indra/newview/llfoldervieweventlistener.h +++ b/indra/newview/llfoldervieweventlistener.h @@ -32,72 +32,263 @@ #include "llpermissionsflags.h" #include "llpointer.h" #include "llwearabletype.h" +#include "lltooldraganddrop.h" +// These are grouping of inventory types. +// Order matters when sorting system folders to the top. +enum EInventorySortGroup +{ + SG_SYSTEM_FOLDER, + SG_TRASH_FOLDER, + SG_NORMAL_FOLDER, + SG_ITEM +}; -class LLFolderViewItem; -class LLFolderView; class LLFontGL; class LLInventoryModel; class LLMenuGL; -class LLScrollContainer; class LLUIImage; class LLUUID; +class LLFolderViewItem; +class LLFolderViewFolder; -// This is an abstract base class that users of the folderview classes -// would use to catch the useful events emitted from the folder -// views. -class LLFolderViewEventListener +class LLFolderViewFilter { public: - virtual ~LLFolderViewEventListener( void ) {} + LLFolderViewFilter() {} + virtual ~LLFolderViewFilter() {} + + // +-------------------------------------------------------------------+ + // + Execution And Results + // +-------------------------------------------------------------------+ + virtual bool check(const LLFolderViewItem* item) = 0; + virtual bool check(const LLInventoryItem* item) = 0; + virtual bool checkFolder(const LLFolderViewFolder* folder) const = 0; + virtual bool checkFolder(const LLUUID& folder_id) const = 0; + + virtual void setEmptyLookupMessage(const std::string& message) = 0; + const virtual std::string& getEmptyLookupMessage() const = 0; + + // +-------------------------------------------------------------------+ + // + Status + // +-------------------------------------------------------------------+ + virtual bool isActive() const = 0; + virtual bool isModified() const = 0; + virtual bool isModifiedAndClear() = 0; + virtual void clearModified() = 0; + virtual const std::string& getName() const = 0; + virtual const std::string& getFilterText() = 0; + //RN: this is public to allow system to externally force a global refilter + virtual void setModified(EFilterBehavior behavior = FILTER_RESTART) = 0; + + // +-------------------------------------------------------------------+ + // + Count + // +-------------------------------------------------------------------+ + virtual void setFilterCount(S32 count) = 0; + virtual S32 getFilterCount() const = 0; + virtual void decrementFilterCount() = 0; + + // +-------------------------------------------------------------------+ + // + Default + // +-------------------------------------------------------------------+ + virtual BOOL isNotDefault() const = 0; + virtual void markDefault() = 0; + virtual void resetDefault() = 0; + + // +-------------------------------------------------------------------+ + // + Generation + // +-------------------------------------------------------------------+ + virtual S32 getCurrentGeneration() const = 0; + virtual S32 getFirstSuccessGeneration() const = 0; + virtual S32 getFirstRequiredGeneration() const = 0; +}; + +struct LLFolderViewModelInterface +{ + virtual void requestSortAll() = 0; + virtual void requestSort(class LLFolderViewFolder*) = 0; + + virtual void sort(class LLFolderViewFolder*) = 0; + virtual void filter(class LLFolderViewFolder*) = 0; +}; + +struct LLFolderViewModelCommon : public LLFolderViewModelInterface +{ + LLFolderViewModelCommon() + : mTargetSortVersion(0) + {} + + virtual void requestSortAll() + { + // sort everything + mTargetSortVersion++; + } + + virtual void requestSort(class LLFolderViewFolder* folder) + { + folder->requestSort(); + } + +protected: + bool needsSort(class LLFolderViewModelItem* item) + { + return item->getSortVersion() < mTargetSortVersion; + } + + S32 mTargetSortVersion; +}; + + +// This is am abstract base class that users of the folderview classes +// would use to bridge the folder view with the underlying data +class LLFolderViewModelItem +{ +public: + virtual ~LLFolderViewModelItem( void ) {}; + + virtual void update() {} //called when drawing virtual const std::string& getName() const = 0; virtual const std::string& getDisplayName() const = 0; - virtual const LLUUID& getUUID() const = 0; - virtual time_t getCreationDate() const = 0; // UTC seconds - virtual PermissionMask getPermissionMask() const = 0; - virtual LLFolderType::EType getPreferredType() const = 0; + virtual LLPointer getIcon() const = 0; virtual LLPointer getOpenIcon() const { return getIcon(); } + virtual LLFontGL::StyleFlags getLabelStyle() const = 0; virtual std::string getLabelSuffix() const = 0; + virtual void openItem( void ) = 0; virtual void closeItem( void ) = 0; - virtual void previewItem( void ) = 0; virtual void selectItem(void) = 0; - virtual void showProperties(void) = 0; + virtual BOOL isItemRenameable() const = 0; virtual BOOL renameItem(const std::string& new_name) = 0; + virtual BOOL isItemMovable( void ) const = 0; // Can be moved to another folder + virtual void move( LLFolderViewModelItem* parent_listener ) = 0; + virtual BOOL isItemRemovable( void ) const = 0; // Can be destroyed - virtual BOOL isItemInTrash( void) const { return FALSE; } // TODO: make into pure virtual. virtual BOOL removeItem() = 0; - virtual void removeBatch(LLDynamicArray& batch) = 0; - virtual void move( LLFolderViewEventListener* parent_listener ) = 0; + virtual void removeBatch(std::vector& batch) = 0; + virtual BOOL isItemCopyable() const = 0; virtual BOOL copyToClipboard() const = 0; virtual void cutToClipboard() = 0; + virtual BOOL isClipboardPasteable() const = 0; virtual void pasteFromClipboard() = 0; virtual void pasteLinkFromClipboard() = 0; + virtual void buildContextMenu(LLMenuGL& menu, U32 flags) = 0; - virtual BOOL isUpToDate() const = 0; - virtual BOOL hasChildren() const = 0; - virtual LLInventoryType::EType getInventoryType() const = 0; - virtual void performAction(LLInventoryModel* model, std::string action) = 0; - virtual LLWearableType::EType getWearableType() const = 0; - + // This method should be called when a drag begins. returns TRUE // if the drag can begin, otherwise FALSE. + virtual LLToolDragAndDrop::ESource getDragSource() const = 0; virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; - + // This method will be called to determine if a drop can be // performed, and will set drop to TRUE if a drop is // requested. Returns TRUE if a drop is possible/happened, // otherwise FALSE. virtual BOOL dragOrDrop(MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - std::string& tooltip_msg) = 0; + EDragAndDropType cargo_type, + void* cargo_data, + std::string& tooltip_msg) = 0; + + virtual void requestSort() = 0; + virtual S32 getSortVersion() = 0; + virtual void setSortVersion(S32 version) = 0; +}; + +class LLFolderViewModelItemCommon : public LLFolderViewModelItem +{ +public: + LLFolderViewModelItemCommon() + : mSortVersion(-1) + {} + + void requestSort() { mSortVersion = -1; } + S32 getSortVersion() { return mSortVersion; } + void setSortVersion(S32 version) { mSortVersion = VERSION;} + +protected: + S32 mSortVersion; +}; + +template +class LLFolderViewModel : public LLFolderViewModelCommon +{ +protected: + LLFolderViewModel() {} + + typedef SORT_TYPE SortType; + typedef ITEM_TYPE ItemType; + typedef FOLDER_TYPE FolderType; + typedef FILTER_TYPE FilterType; + + virtual const SortType& getSorter() const { return mSorter; } + virtual void setSorter(const SortType& type) { mSorter = sorter; requestSortAll(); } + virtual FilterType& getFilter() const { return mFilter; } + virtual void setFilter(const FilterType& filter) { mFilter = filter; } + +public: + + struct ViewModelCompare() + { + ViewModelCompare(const SortType& sorter) + : mSorter(sorter) + {} + + int operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) + { + return mSorter(static_cast(a->getListener()), static_cast(b->getListener())); + } + + int operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) + { + return mSorter(static_cast(a->getListener()), static_cast(b->getListener())); + } + + const SortType& mSorter; + } + + void sort(LLFolderViewFolder* folder) + { + if (needsSort(folder)) + { + std::sort(folder->getFoldersBegin(), folder->getFoldersEnd(), ViewModelCompare(getSorter())); + std::sort(folder->getItemsBegin(), folder->getItemsEnd(), ViewModelCompare(getSorter())); + folder->getListener()->setSortVersion(mTargetSortVersion); + folder->requestArrange(); + } + } + + void filter(LLFolderViewFolder* folder) + { + FilterType& filter = getFilter(); + for (std::list::iterator it = folder->getItemsBegin(), end_it = folder->getItemsEnd(); + it != end_it; + ++it) + { + LLFolderViewItem* child_item = *it; + child_item->setFiltered(filter(static_cast(child_item->getListener())), filter.getCurrentGeneration()) + } + + for (std::list::iterator it = folder->getFoldersBegin(), end_it = folder->getFoldersEnd(); + it != end_it; + ++it) + { + LLFolderViewItem* child_folder = *it; + child_folder->setFiltered(filter(static_cast(child_folder->getListener())), filter.getCurrentGeneration()) + } + } + +protected: + SortType mSorter; + FilterType mFilter; }; + + + + #endif diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 43d3675d17..f452ae25c3 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -29,6 +29,7 @@ // viewer includes #include "llfolderview.h" // Items depend extensively on LLFolderViews +#include "llfolderview.h" #include "llfoldervieweventlistener.h" #include "llviewerfoldertype.h" #include "llinventorybridge.h" // for LLItemBridge in LLInventorySort::operator() @@ -121,15 +122,12 @@ LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) mStringMatchOffset(std::string::npos), mControlLabelRotation(0.f), mDragAndDropTarget(FALSE), - mIsLoading(FALSE), mLabel(p.name), mRoot(p.root), - mCreationDate(p.creation_date), mIcon(p.icon), mIconOpen(p.icon_open), mIconOverlay(p.icon_overlay), mListener(p.listener), - mShowLoadStatus(false), mIsMouseOverTitle(false) { } @@ -218,14 +216,13 @@ LLFolderViewItem* LLFolderViewItem::getPreviousOpenNode(BOOL include_children) // until we find out otherwise BOOL LLFolderViewItem::potentiallyVisible() { - // we haven't been checked against min required filter - // or we have and we passed - return getLastFilterGeneration() < getRoot()->getFilter()->getMinRequiredGeneration() || getFiltered(); + return getFiltered() // we've passed the filter + || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration()); // or we don't know yet } BOOL LLFolderViewItem::getFiltered() { - return mPassedFilter && mLastFilterGeneration >= getRoot()->getFilter()->getMinRequiredGeneration(); + return mPassedFilter && mLastFilterGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); } BOOL LLFolderViewItem::getFiltered(S32 filter_generation) @@ -244,60 +241,47 @@ void LLFolderViewItem::setIcon(LLUIImagePtr icon) mIcon = icon; } -// refresh information from the listener -void LLFolderViewItem::refreshFromListener() +void LLFolderViewItem::refresh() { - if(mListener) - { - mLabel = mListener->getDisplayName(); - LLFolderType::EType preferred_type = mListener->getPreferredType(); - - // *TODO: to be removed when database supports multi language. This is a - // temporary attempt to display the inventory folder in the user locale. - // mantipov: *NOTE: be sure this code is synchronized with LLFriendCardsManager::findChildFolderUUID - // it uses the same way to find localized string + if(!getListener()) return; - // HACK: EXT - 6028 ([HARD CODED]? Inventory > Library > "Accessories" folder) - // Translation of Accessories folder in Library inventory folder - bool accessories = false; - if(mLabel == std::string("Accessories")) - { - //To ensure that Accessories folder is in Library we have to check its parent folder. - //Due to parent LLFolderViewFloder is not set to this item yet we have to check its parent via Inventory Model - LLInventoryCategory* cat = gInventory.getCategory(mListener->getUUID()); - if(cat) - { - const LLUUID& parent_folder_id = cat->getParentUUID(); - accessories = (parent_folder_id == gInventory.getLibraryRootFolderID()); - } - } + mLabel = getListener()->getDisplayName(); + LLFolderType::EType preferred_type = getListener()->getPreferredType(); - //"Accessories" inventory category has folder type FT_NONE. So, this folder - //can not be detected as protected with LLFolderType::lookupIsProtectedType - if (accessories || LLFolderType::lookupIsProtectedType(preferred_type)) - { - LLTrans::findString(mLabel, "InvFolder " + mLabel); - }; + // *TODO: to be removed when database supports multi language. This is a + // temporary attempt to display the inventory folder in the user locale. + // mantipov: *NOTE: be sure this code is synchronized with LLFriendCardsManager::findChildFolderUUID + // it uses the same way to find localized string - setToolTip(mLabel); - setIcon(mListener->getIcon()); - time_t creation_date = mListener->getCreationDate(); - if ((creation_date > 0) && (mCreationDate != creation_date)) - { - setCreationDate(creation_date); - dirtyFilter(); - } - if (mRoot->useLabelSuffix()) + // HACK: EXT - 6028 ([HARD CODED]? Inventory > Library > "Accessories" folder) + // Translation of Accessories folder in Library inventory folder + bool accessories = false; + if(mLabel == std::string("Accessories")) + { + //To ensure that Accessories folder is in Library we have to check its parent folder. + //Due to parent LLFolderViewFloder is not set to this item yet we have to check its parent via Inventory Model + LLInventoryCategory* cat = gInventory.getCategory(getListener()->getUUID()); + if(cat) { - mLabelStyle = mListener->getLabelStyle(); - mLabelSuffix = mListener->getLabelSuffix(); + const LLUUID& parent_folder_id = cat->getParentUUID(); + accessories = (parent_folder_id == gInventory.getLibraryRootFolderID()); } } -} -void LLFolderViewItem::refresh() -{ - refreshFromListener(); + //"Accessories" inventory category has folder type FT_NONE. So, this folder + //can not be detected as protected with LLFolderType::lookupIsProtectedType + if (accessories || LLFolderType::lookupIsProtectedType(preferred_type)) + { + LLTrans::findString(mLabel, "InvFolder " + mLabel); + }; + + setToolTip(mLabel); + setIcon(getListener()->getIcon()); + if (mRoot->useLabelSuffix()) + { + mLabelStyle = getListener()->getLabelStyle(); + mLabelSuffix = getListener()->getLabelSuffix(); + } std::string searchable_label(mLabel); searchable_label.append(mLabelSuffix); @@ -316,11 +300,7 @@ void LLFolderViewItem::refresh() } mLabelWidthDirty = true; -} - -void LLFolderViewItem::applyListenerFunctorRecursively(LLFolderViewListenerFunctor& functor) -{ - functor(mListener); + dirtyFilter(); } // This function is called when items are added or view filters change. It's @@ -386,19 +366,14 @@ void LLFolderViewItem::changeSelectionFromRoot(LLFolderViewItem* selection, BOOL getRoot()->changeSelection(selection, selected); } -std::set LLFolderViewItem::getSelectionList() const +std::set LLFolderViewItem::getSelectionList() const { - std::set selection; + std::set selection; return selection; } -EInventorySortGroup LLFolderViewItem::getSortGroup() const -{ - return SG_ITEM; -} - // addToFolder() returns TRUE if it succeeds. FALSE otherwise -BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder, LLFolderView* root) +BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) { if (!folder) { @@ -459,7 +434,7 @@ void LLFolderViewItem::filter( LLInventoryFilter& filter) } setFiltered(passed_filter, filter.getCurrentGeneration()); - mStringMatchOffset = filter.getStringMatchOffset(); + mStringMatchOffset = filter.getStringMatchOffset(this); filter.decrementFilterCount(); if (getRoot()->getDebugFilters()) @@ -522,9 +497,9 @@ void LLFolderViewItem::selectItem(void) { if (mIsSelected == FALSE) { - if (mListener) + if (getListener()) { - mListener->selectItem(); + getListener()->selectItem(); } mIsSelected = TRUE; } @@ -532,9 +507,9 @@ void LLFolderViewItem::selectItem(void) BOOL LLFolderViewItem::isMovable() { - if( mListener ) + if( getListener() ) { - return mListener->isItemMovable(); + return getListener()->isItemMovable(); } else { @@ -544,9 +519,9 @@ BOOL LLFolderViewItem::isMovable() BOOL LLFolderViewItem::isRemovable() { - if( mListener ) + if( getListener() ) { - return mListener->isItemRemovable(); + return getListener()->isItemRemovable(); } else { @@ -572,9 +547,9 @@ BOOL LLFolderViewItem::remove() { return FALSE; } - if(mListener) + if(getListener()) { - return mListener->removeItem(); + return getListener()->removeItem(); } return TRUE; } @@ -582,25 +557,25 @@ BOOL LLFolderViewItem::remove() // Build an appropriate context menu for the item. void LLFolderViewItem::buildContextMenu(LLMenuGL& menu, U32 flags) { - if(mListener) + if(getListener()) { - mListener->buildContextMenu(menu, flags); + getListener()->buildContextMenu(menu, flags); } } void LLFolderViewItem::openItem( void ) { - if( mListener ) + if( getListener() ) { - mListener->openItem(); + getListener()->openItem(); } } void LLFolderViewItem::preview( void ) { - if (mListener) + if (getListener()) { - mListener->previewItem(); + getListener()->previewItem(); } } @@ -608,9 +583,9 @@ void LLFolderViewItem::rename(const std::string& new_name) { if( !new_name.empty() ) { - if( mListener ) + if( getListener() ) { - mListener->renameItem(new_name); + getListener()->renameItem(new_name); if(mParentFolder) { @@ -633,11 +608,11 @@ LLViewerInventoryItem * LLFolderViewItem::getInventoryItem(void) const std::string& LLFolderViewItem::getName( void ) const { - if(mListener) + if(getListener()) { - return mListener->getName(); + return getListener()->getName(); } - return mLabel; + return z; } // LLView functionality @@ -713,21 +688,19 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) // *TODO: push this into listener and remove // dependency on llagent - if (mListener - && gInventory.isObjectDescendentOf(mListener->getUUID(), gInventory.getRootFolderID())) + if (getListener()) { - src = LLToolDragAndDrop::SOURCE_AGENT; + src = getListener()->getDragSource(); } - else if (mListener - && gInventory.isObjectDescendentOf(mListener->getUUID(), gInventory.getLibraryRootFolderID())) + else { - src = LLToolDragAndDrop::SOURCE_LIBRARY; + src = LLToolDragAndDrop::SOURCE_VIEWER; } can_drag = root->startDrag(src); if (can_drag) { - // if (mListener) mListener->startDrag(); + // if (getListener()) getListener()->startDrag(); // RN: when starting drag and drop, clear out last auto-open root->autoOpenTest(NULL); root->setShowSelectionContext(TRUE); @@ -816,9 +789,9 @@ BOOL LLFolderViewItem::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, { BOOL accepted = FALSE; BOOL handled = FALSE; - if(mListener) + if(getListener()) { - accepted = mListener->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); + accepted = getListener()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); handled = accepted; if (accepted) { @@ -864,15 +837,14 @@ void LLFolderViewItem::draw() const S32 FOCUS_LEFT = 1; const LLFontGL* font = getLabelFontForStyle(mLabelStyle); - const BOOL in_inventory = getListener() && gInventory.isObjectDescendentOf(getListener()->getUUID(), gInventory.getRootFolderID()); - const BOOL in_library = getListener() && gInventory.isObjectDescendentOf(getListener()->getUUID(), gInventory.getLibraryRootFolderID()); + getListener()->update(); //--------------------------------------------------------------------------------// // Draw open folder arrow // - const bool up_to_date = mListener && mListener->isUpToDate(); + const bool up_to_date = getListener() && getListener()->isUpToDate(); const bool possibly_has_children = ((up_to_date && hasVisibleChildren()) // we fetched our children and some of them have passed the filter... - || (!up_to_date && mListener && mListener->hasChildren())); // ...or we know we have children but haven't fetched them (doesn't obey filter) + || (!up_to_date && getListener() && getListener()->hasChildren())); // ...or we know we have children but haven't fetched them (doesn't obey filter) if (possibly_has_children) { LLUIImage* arrow_image = default_params.folder_arrow_image; @@ -1030,30 +1002,6 @@ void LLFolderViewItem::draw() LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, getRect().getWidth() - (S32) text_left, &right_x, TRUE); - //--------------------------------------------------------------------------------// - // Draw "Loading..." text - // - bool root_is_loading = false; - if (in_inventory) - { - root_is_loading = LLInventoryModelBackgroundFetch::instance().inventoryFetchInProgress(); - } - if (in_library) - { - root_is_loading = LLInventoryModelBackgroundFetch::instance().libraryFetchInProgress(); - } - if ((mIsLoading - && mTimeSinceRequestStart.getElapsedTimeF32() >= gSavedSettings.getF32("FolderLoadingMessageWaitTime")) - || (LLInventoryModelBackgroundFetch::instance().folderFetchActive() - && root_is_loading - && mShowLoadStatus)) - { - std::string load_string = " ( " + LLTrans::getString("LoadingData") + " ) "; - font->renderUTF8(load_string, 0, right_x, y, sSearchStatusColor, - LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, - S32_MAX, S32_MAX, &right_x, FALSE); - } - //--------------------------------------------------------------------------------// // Draw label suffix // @@ -1067,28 +1015,29 @@ void LLFolderViewItem::draw() //--------------------------------------------------------------------------------// // Highlight string match // - if (mStringMatchOffset != std::string::npos) - { - // don't draw backgrounds for zero-length strings - S32 filter_string_length = getRoot()->getFilterSubString().size(); - if (filter_string_length > 0) - { - std::string combined_string = mLabel + mLabelSuffix; - S32 left = llround(text_left) + font->getWidth(combined_string, 0, mStringMatchOffset) - 1; - S32 right = left + font->getWidth(combined_string, mStringMatchOffset, filter_string_length) + 2; - S32 bottom = llfloor(getRect().getHeight() - font->getLineHeight() - 3 - TOP_PAD); - S32 top = getRect().getHeight() - TOP_PAD; - - LLUIImage* box_image = default_params.selection_image; - LLRect box_rect(left, top, right, bottom); - box_image->draw(box_rect, sFilterBGColor); - F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mStringMatchOffset); - F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; - font->renderUTF8( combined_string, mStringMatchOffset, match_string_left, yy, - sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, - filter_string_length, S32_MAX, &right_x, FALSE ); - } - } + RN: expose interface for highlighting + //if (mStringMatchOffset != std::string::npos) + //{ + // // don't draw backgrounds for zero-length strings + // S32 filter_string_length = getRoot()->getFilterSubString().size(); + // if (filter_string_length > 0) + // { + // std::string combined_string = mLabel + mLabelSuffix; + // S32 left = llround(text_left) + font->getWidth(combined_string, 0, mStringMatchOffset) - 1; + // S32 right = left + font->getWidth(combined_string, mStringMatchOffset, filter_string_length) + 2; + // S32 bottom = llfloor(getRect().getHeight() - font->getLineHeight() - 3 - TOP_PAD); + // S32 top = getRect().getHeight() - TOP_PAD; + // + // LLUIImage* box_image = default_params.selection_image; + // LLRect box_rect(left, top, right, bottom); + // box_image->draw(box_rect, sFilterBGColor); + // F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mStringMatchOffset); + // F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; + // font->renderUTF8( combined_string, mStringMatchOffset, match_string_left, yy, + // sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, + // filter_string_length, S32_MAX, &right_x, FALSE ); + // } + //} } @@ -1097,19 +1046,16 @@ void LLFolderViewItem::draw() ///---------------------------------------------------------------------------- LLFolderViewFolder::LLFolderViewFolder( const LLFolderViewItem::Params& p ): - LLFolderViewItem( p ), // 0 = no create time + LLFolderViewItem( p ), mIsOpen(FALSE), mExpanderHighlighted(FALSE), mCurHeight(0.f), mTargetHeight(0.f), mAutoOpenCountdown(0.f), - mSubtreeCreationDate(0), - mAmTrash(LLFolderViewFolder::UNKNOWN), mLastArrangeGeneration( -1 ), mLastCalculatedWidth(0), mCompletedFilterGeneration(-1), mMostFilteredDescendantGeneration(-1), - mNeedsSort(false), mPassedFolderFilter(FALSE) { } @@ -1130,32 +1076,30 @@ void LLFolderViewFolder::setFilteredFolder(bool filtered, S32 filter_generation) bool LLFolderViewFolder::getFilteredFolder(S32 filter_generation) { - return mPassedFolderFilter && mLastFilterGeneration >= getRoot()->getFilter()->getMinRequiredGeneration(); + return mPassedFolderFilter && mLastFilterGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); } // addToFolder() returns TRUE if it succeeds. FALSE otherwise -BOOL LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder, LLFolderView* root) +BOOL LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder) { if (!folder) { return FALSE; } mParentFolder = folder; - root->addItemID(getListener()->getUUID(), this); return folder->addFolder(this); } +static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); + // Finds width and height of this object and its children. Also // makes sure that this view and its children are the right size. S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) { // sort before laying out contents - if (mNeedsSort) - { - mFolders.sort(mSortFunction); - mItems.sort(mSortFunction); - mNeedsSort = false; - } + getRoot->getViewModel()->sort(this); + + LLFastTimer t2(FTM_ARRANGE); mHasVisibleChildren = hasFilteredDescendants(filter_generation); @@ -1166,7 +1110,6 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) mCurHeight = llmax((F32)*height, mCurHeight); // initialize running height value as height of single item in case we have no children - *height = getItemHeight(); F32 running_height = (F32)*height; F32 target_height = (F32)*height; @@ -1176,7 +1119,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) // set last arrange generation first, in case children are animating // and need to be arranged again mLastArrangeGeneration = getRoot()->getArrangeGeneration(); - if (mIsOpen) + if (isOpen()) { // Add sizes of children S32 parent_item_height = getRect().getHeight(); @@ -1252,7 +1195,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) // animate current height towards target height if (llabs(mCurHeight - mTargetHeight) > 1.f) { - mCurHeight = lerp(mCurHeight, mTargetHeight, LLCriticalDamp::getInterpolant(mIsOpen ? FOLDER_OPEN_TIME_CONSTANT : FOLDER_CLOSE_TIME_CONSTANT)); + mCurHeight = lerp(mCurHeight, mTargetHeight, LLCriticalDamp::getInterpolant(isOpen() ? FOLDER_OPEN_TIME_CONSTANT : FOLDER_CLOSE_TIME_CONSTANT)); requestArrange(); @@ -1303,9 +1246,7 @@ BOOL LLFolderViewFolder::needsArrange() void LLFolderViewFolder::requestSort() { - mNeedsSort = true; - // whenever item order changes, we need to lay things out again - requestArrange(); + getRoot()->getViewModel()->requestSort(this); } void LLFolderViewFolder::setCompletedFilterGeneration(S32 generation, BOOL recurse_up) @@ -1327,7 +1268,7 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) // if failed to pass filter newer than must_pass_generation // you will automatically fail this time, so we only // check against items that have passed the filter - S32 must_pass_generation = filter.getMustPassGeneration(); + S32 must_pass_generation = filter.getFirstRequiredGeneration(); bool autoopen_folders = (filter.hasFilterString()); @@ -1380,11 +1321,11 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) // when applying a filter, matching folders get their contents downloaded first if (filter.isNotDefault() - && getFiltered(filter.getMinRequiredGeneration()) - && (mListener - && !gInventory.isCategoryComplete(mListener->getUUID()))) + && getFiltered(filter.getFirstSuccessGeneration()) + && (getListener() + && !gInventory.isCategoryComplete(getListener()->getUUID()))) { - LLInventoryModelBackgroundFetch::instance().start(mListener->getUUID()); + LLInventoryModelBackgroundFetch::instance().start(getListener()->getUUID()); } // now query children @@ -1405,7 +1346,7 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) if (folder->getCompletedFilterGeneration() >= filter_generation) { // track latest generation to pass any child items - if (folder->getFiltered() || folder->hasFilteredDescendants(filter.getMinRequiredGeneration())) + if (folder->getFiltered() || folder->hasFilteredDescendants(filter.getFirstSuccessGeneration())) { mMostFilteredDescendantGeneration = filter_generation; requestArrange(); @@ -1459,7 +1400,7 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) item->filter( filter ); - if (item->getFiltered(filter.getMinRequiredGeneration())) + if (item->getFiltered(filter.getFirstSuccessGeneration())) { mMostFilteredDescendantGeneration = filter_generation; requestArrange(); @@ -1524,8 +1465,8 @@ void LLFolderViewFolder::dirtyFilter() BOOL LLFolderViewFolder::getFiltered() { - return getFilteredFolder(getRoot()->getFilter()->getMinRequiredGeneration()) - && LLFolderViewItem::getFiltered(); + return getFilteredFolder(getRoot()->getFilter()->getFirstSuccessGeneration()) + && LLFolderViewItem::getFiltered(); } BOOL LLFolderViewFolder::getFiltered(S32 filter_generation) @@ -1541,7 +1482,7 @@ BOOL LLFolderViewFolder::hasFilteredDescendants(S32 filter_generation) BOOL LLFolderViewFolder::hasFilteredDescendants() { - return mMostFilteredDescendantGeneration >= getRoot()->getFilter()->getCurrentGeneration(); + return mMostFilteredDescendantGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); } // Passes selection information on to children and record selection @@ -1896,14 +1837,6 @@ void LLFolderViewFolder::extendSelectionTo(LLFolderViewItem* new_selection) void LLFolderViewFolder::destroyView() { - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - LLFolderViewItem* item = (*iit); - getRoot()->removeItemID(item->getListener()->getUUID()); - } - std::for_each(mItems.begin(), mItems.end(), DeletePointer()); mItems.clear(); @@ -1913,8 +1846,6 @@ void LLFolderViewFolder::destroyView() folderp->destroyView(); // removes entry from mFolders } - //deleteAllChildren(); - if (mParentFolder) { mParentFolder->removeView(this); @@ -1976,103 +1907,14 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) dirtyFilter(); //because an item is going away regardless of filter status, force rearrange requestArrange(); - getRoot()->removeItemID(item->getListener()->getUUID()); removeChild(item); } -bool LLFolderViewFolder::isTrash() const -{ - if (mAmTrash == LLFolderViewFolder::UNKNOWN) - { - mAmTrash = mListener->getUUID() == gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH, false) ? LLFolderViewFolder::TRASH : LLFolderViewFolder::NOT_TRASH; - } - return mAmTrash == LLFolderViewFolder::TRASH; -} - -void LLFolderViewFolder::sortBy(U32 order) -{ - if (!mSortFunction.updateSort(order)) - { - // No changes. - return; - } - - // Propagate this change to sub folders - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->sortBy(order); - } - - // Don't sort the topmost folders (My Inventory and Library) - if (mListener->getUUID().notNull()) - { - mFolders.sort(mSortFunction); - mItems.sort(mSortFunction); - } - - if (order & LLInventoryFilter::SO_DATE) - { - time_t latest = 0; - - if (!mItems.empty()) - { - LLFolderViewItem* item = *(mItems.begin()); - latest = item->getCreationDate(); - } - - if (!mFolders.empty()) - { - LLFolderViewFolder* folder = *(mFolders.begin()); - if (folder->getCreationDate() > latest) - { - latest = folder->getCreationDate(); - } - } - mSubtreeCreationDate = latest; - } -} - -void LLFolderViewFolder::setItemSortOrder(U32 ordering) -{ - if (mSortFunction.updateSort(ordering)) - { - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->setItemSortOrder(ordering); - } - - mFolders.sort(mSortFunction); - mItems.sort(mSortFunction); - } -} - -EInventorySortGroup LLFolderViewFolder::getSortGroup() const -{ - if (isTrash()) - { - return SG_TRASH_FOLDER; - } - - if( mListener ) - { - if(LLFolderType::lookupIsProtectedType(mListener->getPreferredType())) - { - return SG_SYSTEM_FOLDER; - } - } - - return SG_NORMAL_FOLDER; -} - BOOL LLFolderViewFolder::isMovable() { - if( mListener ) + if( getListener() ) { - if( !(mListener->isItemMovable()) ) + if( !(getListener()->isItemMovable()) ) { return FALSE; } @@ -2103,9 +1945,9 @@ BOOL LLFolderViewFolder::isMovable() BOOL LLFolderViewFolder::isRemovable() { - if( mListener ) + if( getListener() ) { - if( !(mListener->isItemRemovable()) ) + if( !(getListener()->isItemRemovable()) ) { return FALSE; } @@ -2145,37 +1987,23 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) item->dirtyFilter(); - // Update the folder creation date if the folder has no creation date - bool setting_date = false; - const time_t item_creation_date = item->getCreationDate(); - if ((item_creation_date > 0) && (mCreationDate == 0)) - { - setCreationDate(item_creation_date); - setting_date = true; - } - // Handle sorting requestArrange(); requestSort(); - // Traverse parent folders and update creation date and resort, if necessary - LLFolderViewFolder* parentp = getParentFolder(); - while (parentp) - { - // Update the parent folder creation date - if (setting_date && (parentp->mCreationDate == 0)) - { - parentp->setCreationDate(item_creation_date); - } + FIXME: RN - make sort bubble up as long as parent Folder doesn't have anything matching sort criteria + //// Traverse parent folders and update creation date and resort, if necessary + //LLFolderViewFolder* parentp = this; + //while (parentp) + //{ + // if (parentp->mSortFunction.isByDate()) + // { + // // parent folder doesn't have a time stamp yet, so get it from us + // parentp->requestSort(); + // } - if (parentp->mSortFunction.isByDate()) - { - // parent folder doesn't have a time stamp yet, so get it from us - parentp->requestSort(); - } - - parentp = parentp->getParentFolder(); - } + // parentp = parentp->getParentFolder(); + //} return TRUE; } @@ -2192,12 +2020,15 @@ BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) // rearrange all descendants too, as our indentation level might have changed folder->requestArrange(TRUE); requestSort(); - LLFolderViewFolder* parentp = getParentFolder(); - while (parentp && !parentp->mSortFunction.isByDate()) + if (getRoot()->getSortFunction().isByDate()) { - // parent folder doesn't have a time stamp yet, so get it from us - parentp->requestSort(); - parentp = parentp->getParentFolder(); + LLFolderViewFolder* parentp = getParentFolder(); + while(parentp) + { + // parent folder doesn't have a time stamp yet, so get it from us + parentp->requestSort(); + parentp = parentp->getParentFolder(); + } } return TRUE; } @@ -2224,7 +2055,7 @@ void LLFolderViewFolder::requestArrange(BOOL include_descendants) void LLFolderViewFolder::toggleOpen() { - setOpen(!mIsOpen); + setOpen(!isOpen()); } // Force a folder open or closed @@ -2235,17 +2066,17 @@ void LLFolderViewFolder::setOpen(BOOL openitem) void LLFolderViewFolder::setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse) { - BOOL was_open = mIsOpen; + BOOL was_open = isOpen(); mIsOpen = openitem; - if (mListener) + if (getListener()) { if(!was_open && openitem) { - mListener->openItem(); + getListener()->openItem(); } else if(was_open && !openitem) { - mListener->closeItem(); + getListener()->closeItem(); } } @@ -2265,7 +2096,7 @@ void LLFolderViewFolder::setOpenArrangeRecursively(BOOL openitem, ERecurseType r mParentFolder->setOpenArrangeRecursively(openitem, RECURSE_UP); } - if (was_open != mIsOpen) + if (was_open != isOpen()) { requestArrange(); } @@ -2334,23 +2165,6 @@ void LLFolderViewFolder::applyFunctorRecursively(LLFolderViewFunctor& functor) } } -void LLFolderViewFolder::applyListenerFunctorRecursively(LLFolderViewListenerFunctor& functor) -{ - functor(mListener); - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->applyListenerFunctorRecursively(functor); - } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - (*iit)->applyListenerFunctorRecursively(functor); - } -} - // LLView functionality BOOL LLFolderViewFolder::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, @@ -2361,7 +2175,7 @@ BOOL LLFolderViewFolder::handleDragAndDrop(S32 x, S32 y, MASK mask, { BOOL handled = FALSE; - if (mIsOpen) + if (isOpen()) { handled = (childrenHandleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg) != NULL); } @@ -2383,7 +2197,7 @@ BOOL LLFolderViewFolder::handleDragAndDropToThisFolder(MASK mask, EAcceptance* accept, std::string& tooltip_msg) { - BOOL accepted = mListener && mListener->dragOrDrop(mask, drop, cargo_type, cargo_data, tooltip_msg); + BOOL accepted = getListener() && getListener()->dragOrDrop(mask,drop,c_type,cargo_data, tooltip_msg); if (accepted) { @@ -2409,9 +2223,9 @@ BOOL LLFolderViewFolder::handleRightMouseDown( S32 x, S32 y, MASK mask ) BOOL handled = FALSE; // fetch contents of this folder, as context menu can depend on contents // still, user would have to open context menu again to see the changes - gInventory.fetchDescendentsOf(mListener->getUUID()); + gInventory.fetchDescendentsOf(getListener()->getUUID()); - if( mIsOpen ) + if( isOpen() ) { handled = childrenHandleRightMouseDown( x, y, mask ) != NULL; } @@ -2441,7 +2255,7 @@ BOOL LLFolderViewFolder::handleHover(S32 x, S32 y, MASK mask) BOOL LLFolderViewFolder::handleMouseDown( S32 x, S32 y, MASK mask ) { BOOL handled = FALSE; - if( mIsOpen ) + if( isOpen() ) { handled = childrenHandleMouseDown(x,y,mask) != NULL; } @@ -2475,7 +2289,7 @@ BOOL LLFolderViewFolder::handleDoubleClick( S32 x, S32 y, MASK mask ) */ BOOL handled = FALSE; - if( mIsOpen ) + if( isOpen() ) { handled = childrenHandleDoubleClick( x, y, mask ) != NULL; } @@ -2503,7 +2317,7 @@ void LLFolderViewFolder::draw() { mControlLabelRotation = mAutoOpenCountdown * -90.f; } - else if (mIsOpen) + else if (isOpen()) { mControlLabelRotation = lerp(mControlLabelRotation, -90.f, LLCriticalDamp::getInterpolant(0.04f)); } @@ -2512,31 +2326,10 @@ void LLFolderViewFolder::draw() mControlLabelRotation = lerp(mControlLabelRotation, 0.f, LLCriticalDamp::getInterpolant(0.025f)); } - bool possibly_has_children = false; - bool up_to_date = mListener && mListener->isUpToDate(); - if(!up_to_date - && mListener->hasChildren()) // we know we have children but haven't fetched them (doesn't obey filter) - { - possibly_has_children = true; - } - - - BOOL loading = (mIsOpen - && possibly_has_children - && !up_to_date ); - - if ( loading && !mIsLoading ) - { - // Measure how long we've been in the loading state - mTimeSinceRequestStart.reset(); - } - - mIsLoading = loading; - LLFolderViewItem::draw(); // draw children if root folder, or any other folder that is open or animating to closed state - if( getRoot() == this || (mIsOpen || mCurHeight != mTargetHeight )) + if( getRoot() == this || (isOpen() || mCurHeight != mTargetHeight )) { LLView::draw(); } @@ -2544,20 +2337,14 @@ void LLFolderViewFolder::draw() mExpanderHighlighted = FALSE; } -time_t LLFolderViewFolder::getCreationDate() const -{ - return llmax(mCreationDate, mSubtreeCreationDate); -} - - BOOL LLFolderViewFolder::potentiallyVisible() { // folder should be visible by it's own filter status return LLFolderViewItem::potentiallyVisible() // or one or more of its descendants have passed the minimum filter requirement - || hasFilteredDescendants(getRoot()->getFilter()->getMinRequiredGeneration()) + || hasFilteredDescendants() // or not all of its descendants have been checked against minimum filter requirement - || getCompletedFilterGeneration() < getRoot()->getFilter()->getMinRequiredGeneration(); + || getCompletedFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); } // this does prefix traversal, as folders are listed above their contents @@ -2771,41 +2558,27 @@ LLFolderViewItem* LLFolderViewFolder::getPreviousFromChild( LLFolderViewItem* it return result; } - -bool LLInventorySort::updateSort(U32 order) -{ - if (order != mSortOrder) - { - mSortOrder = order; - mByDate = (order & LLInventoryFilter::SO_DATE); - mSystemToTop = (order & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); - mFoldersByName = (order & LLInventoryFilter::SO_FOLDERS_BY_NAME); - return true; - } - return false; -} - -bool LLInventorySort::operator()(const LLFolderViewItem* const& a, const LLFolderViewItem* const& b) +bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) { // ignore sort order for landmarks in the Favorites folder. // they should be always sorted as in Favorites bar. See EXT-719 if (a->getSortGroup() == SG_ITEM && b->getSortGroup() == SG_ITEM - && a->getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK - && b->getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK) + && a->getInventoryType() == LLInventoryType::IT_LANDMARK + && b->getInventoryType() == LLInventoryType::IT_LANDMARK) { static const LLUUID& favorites_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); - LLUUID a_uuid = a->getParentFolder()->getListener()->getUUID(); - LLUUID b_uuid = b->getParentFolder()->getListener()->getUUID(); + LLUUID a_uuid = a->getParentFolder()->getUUID(); + LLUUID b_uuid = b->getParentFolder()->getUUID(); if ((a_uuid == favorites_folder_id && b_uuid == favorites_folder_id)) { // *TODO: mantipov: probably it is better to add an appropriate method to LLFolderViewItem // or to LLInvFVBridge - LLViewerInventoryItem* aitem = (static_cast(a->getListener()))->getItem(); - LLViewerInventoryItem* bitem = (static_cast(b->getListener()))->getItem(); + LLViewerInventoryItem* aitem = (static_cast(a))->getItem(); + LLViewerInventoryItem* bitem = (static_cast(b))->getItem(); if (!aitem || !bitem) return false; S32 a_sort = aitem->getSortField(); @@ -2852,8 +2625,6 @@ bool LLInventorySort::operator()(const LLFolderViewItem* const& a, const LLFolde } else { - // BUG: This is very very slow. The getCreationDate() is log n in number - // of inventory items. time_t first_create = a->getCreationDate(); time_t second_create = b->getCreationDate(); if (first_create == second_create) @@ -2866,3 +2637,4 @@ bool LLInventorySort::operator()(const LLFolderViewItem* const& a, const LLFolde } } } + diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 4e8dc2da16..317228f1ad 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -30,52 +30,13 @@ #include "lldarray.h" // *TODO: Eliminate, forward declare #include "lluiimage.h" -class LLFontGL; class LLFolderView; -class LLFolderViewEventListener; +class LLFolderViewModelItemInventory; class LLFolderViewFolder; class LLFolderViewFunctor; -class LLFolderViewItem; -class LLFolderViewListenerFunctor; class LLInventoryFilter; -class LLMenuGL; -class LLUIImage; class LLViewerInventoryItem; -// These are grouping of inventory types. -// Order matters when sorting system folders to the top. -enum EInventorySortGroup -{ - SG_SYSTEM_FOLDER, - SG_TRASH_FOLDER, - SG_NORMAL_FOLDER, - SG_ITEM -}; - -// *TODO: do we really need one sort object per folder? -// can we just have one of these per LLFolderView ? -class LLInventorySort -{ -public: - LLInventorySort() - : mSortOrder(0), - mByDate(false), - mSystemToTop(false), - mFoldersByName(false) { } - - // Returns true if order has changed - bool updateSort(U32 order); - U32 getSort() { return mSortOrder; } - bool isByDate() { return mByDate; } - - bool operator()(const LLFolderViewItem* const& a, const LLFolderViewItem* const& b); -private: - U32 mSortOrder; - bool mByDate; - bool mSystemToTop; - bool mFoldersByName; -}; - //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLFolderViewItem // @@ -91,78 +52,71 @@ public: struct Params : public LLInitParam::Block { - Optional icon; - Optional icon_open; // used for folders - Optional icon_overlay; // for links - Optional root; - Mandatory listener; + Optional icon, + icon_open, // used for folders + icon_overlay, // for links + folder_arrow_image, + selection_image; + Optional root; + Mandatory listener; - Optional folder_arrow_image; - Optional folder_indentation; // pixels - Optional selection_image; - Optional item_height; // pixels - Optional item_top_pad; // pixels + Optional folder_indentation, // pixels + item_height, + item_top_pad; - Optional creation_date; //UTC seconds + Optional creation_date; Params(); }; // layout constants - static const S32 LEFT_PAD = 5; + static const S32 LEFT_PAD = 5; // LEFT_INDENTATION is set via folder_indentation above - static const S32 ICON_PAD = 2; - static const S32 ICON_WIDTH = 16; - static const S32 TEXT_PAD = 1; - static const S32 TEXT_PAD_RIGHT = 4; - static const S32 ARROW_SIZE = 12; + static const S32 ICON_PAD = 2; + static const S32 ICON_WIDTH = 16; + static const S32 TEXT_PAD = 1; + static const S32 TEXT_PAD_RIGHT = 4; + static const S32 ARROW_SIZE = 12; static const S32 MAX_FOLDER_ITEM_OVERLAP = 2; // animation parameters static const F32 FOLDER_CLOSE_TIME_CONSTANT; static const F32 FOLDER_OPEN_TIME_CONSTANT; - // Mostly for debugging printout purposes. const std::string& getSearchableLabel() { return mSearchableLabel; } - BOOL isLoading() const { return mIsLoading; } - private: BOOL mIsSelected; protected: friend class LLUICtrlFactory; - friend class LLFolderViewEventListener; + friend class LLFolderViewModelItem; LLFolderViewItem(const Params& p); - std::string mLabel; - std::string mSearchableLabel; - S32 mLabelWidth; - bool mLabelWidthDirty; - time_t mCreationDate; - LLFolderViewFolder* mParentFolder; - LLFolderViewEventListener* mListener; - BOOL mIsCurSelection; - BOOL mSelectPending; - LLFontGL::StyleFlags mLabelStyle; - std::string mLabelSuffix; - LLUIImagePtr mIcon; - std::string mStatusText; - LLUIImagePtr mIconOpen; - LLUIImagePtr mIconOverlay; - BOOL mHasVisibleChildren; - S32 mIndentation; - S32 mItemHeight; - BOOL mPassedFilter; - S32 mLastFilterGeneration; - std::string::size_type mStringMatchOffset; - F32 mControlLabelRotation; - LLFolderView* mRoot; - BOOL mDragAndDropTarget; - BOOL mIsLoading; - LLTimer mTimeSinceRequestStart; - bool mShowLoadStatus; - bool mIsMouseOverTitle; + std::string mLabel; + std::string mSearchableLabel; + S32 mLabelWidth; + bool mLabelWidthDirty; + LLFolderViewFolder* mParentFolder; + LLFolderViewModelItemInventory* mListener; + BOOL mIsCurSelection; + BOOL mSelectPending; + LLFontGL::StyleFlags mLabelStyle; + std::string mLabelSuffix; + LLUIImagePtr mIcon; + std::string mStatusText; + LLUIImagePtr mIconOpen; + LLUIImagePtr mIconOverlay; + BOOL mHasVisibleChildren; + S32 mIndentation; + S32 mItemHeight; + BOOL mPassedFilter; + S32 mLastFilterGeneration; + std::string::size_type mStringMatchOffset; + F32 mControlLabelRotation; + LLFolderView* mRoot; + BOOL mDragAndDropTarget; + bool mIsMouseOverTitle; // helper function to change the selection from the root. void changeSelectionFromRoot(LLFolderViewItem* selection, BOOL selected); @@ -174,11 +128,11 @@ protected: static LLFontGL* getLabelFontForStyle(U8 style); - virtual void setCreationDate(time_t creation_date_utc) { mCreationDate = creation_date_utc; } - public: BOOL postBuild(); + virtual void openItem( void ); + // This function clears the currently selected item, and records // the specified selected item appropriately for display and use // in the UI. If open is TRUE, then folders are opened up along @@ -198,9 +152,7 @@ public: // addToFolder() returns TRUE if it succeeds. FALSE otherwise enum { ARRANGE = TRUE, DO_NOT_ARRANGE = FALSE }; - virtual BOOL addToFolder(LLFolderViewFolder* folder, LLFolderView* root); - - virtual EInventorySortGroup getSortGroup() const; + virtual BOOL addToFolder(LLFolderViewFolder* folder); // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. @@ -231,7 +183,7 @@ public: virtual void selectItem(); // gets multiple-element selection - virtual std::set getSelectionList() const; + virtual std::set getSelectionList() const; // Returns true is this object and all of its children can be removed (deleted by user) virtual BOOL isRemovable(); @@ -252,15 +204,13 @@ public: BOOL hasVisibleChildren() { return mHasVisibleChildren; } - void setShowLoadStatus(bool status) { mShowLoadStatus = status; } - // Call through to the viewed object and return true if it can be // removed. Returns true if it's removed. //virtual BOOL removeRecursively(BOOL single_item); BOOL remove(); // Build an appropriate context menu for the item. Flags unused. - void buildContextMenu(LLMenuGL& menu, U32 flags); + void buildContextMenu(class LLMenuGL& menu, U32 flags); // This method returns the actual name of the thing being // viewed. This method will ask the viewed object itself. @@ -273,8 +223,6 @@ public: // contents possible before the entire view has been constructed. const std::string& getLabel() const { return mLabel; } - // Used for sorting, like getLabel() above. - virtual time_t getCreationDate() const { return mCreationDate; } LLFolderViewFolder* getParentFolder( void ) { return mParentFolder; } const LLFolderViewFolder* getParentFolder( void ) const { return mParentFolder; } @@ -282,22 +230,15 @@ public: LLFolderViewItem* getNextOpenNode( BOOL include_children = TRUE ); LLFolderViewItem* getPreviousOpenNode( BOOL include_children = TRUE ); - const LLFolderViewEventListener* getListener( void ) const { return mListener; } - LLFolderViewEventListener* getListener( void ) { return mListener; } + const LLFolderViewModelItemInventory* getListener( void ) const { return mListener; } + LLFolderViewModelItemInventory* getListener( void ) { return mListener; } - // Gets the inventory item if it exists (null otherwise) - LLViewerInventoryItem * getInventoryItem(void); - // just rename the object. void rename(const std::string& new_name); - // open - virtual void openItem( void ); - virtual void preview(void); // Show children (unfortunate that this is called "open") virtual void setOpen(BOOL open = TRUE) {}; - virtual BOOL isOpen() const { return FALSE; } virtual LLFolderView* getRoot(); @@ -314,11 +255,8 @@ public: void setIcon(LLUIImagePtr icon); // refresh information from the object being viewed. - void refreshFromListener(); virtual void refresh(); - virtual void applyListenerFunctorRecursively(LLFolderViewListenerFunctor& functor); - // LLView functionality virtual BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask ); @@ -338,14 +276,40 @@ public: EAcceptance* accept, std::string& tooltip_msg); + // Gets the inventory item if it exists (null otherwise) + LLViewerInventoryItem * getInventoryItem(void); + // open + virtual void preview(void); + private: static std::map sFonts; // map of styles to fonts }; +class LLInventorySort +{ +public: + LLInventorySort(U32 order) + : mSortOrder(0), + mByDate(false), + mSystemToTop(false), + mFoldersByName(false) + { + mSortOrder = order; + mByDate = (order & LLInventoryFilter::SO_DATE); + mSystemToTop = (order & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); + mFoldersByName = (order & LLInventoryFilter::SO_FOLDERS_BY_NAME); + } -// function used for sorting. -typedef bool (*sort_order_f)(LLFolderViewItem* a, LLFolderViewItem* b); + bool isByDate() { return mByDate; } + U32 getSortOrder() { return mSortOrder; } + bool operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b); +private: + U32 mSortOrder; + bool mByDate; + bool mSystemToTop; + bool mFoldersByName; +}; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLFolderViewFolder @@ -362,10 +326,6 @@ protected: friend class LLUICtrlFactory; public: - typedef enum e_trash - { - UNKNOWN, TRASH, NOT_TRASH - } ETrash; typedef std::list items_t; typedef std::list folders_t; @@ -373,15 +333,12 @@ public: protected: items_t mItems; folders_t mFolders; - LLInventorySort mSortFunction; BOOL mIsOpen; BOOL mExpanderHighlighted; F32 mCurHeight; F32 mTargetHeight; F32 mAutoOpenCountdown; - time_t mSubtreeCreationDate; - mutable ETrash mAmTrash; S32 mLastArrangeGeneration; S32 mLastCalculatedWidth; S32 mCompletedFilterGeneration; @@ -407,17 +364,13 @@ public: LLFolderViewItem* getPreviousFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); // addToFolder() returns TRUE if it succeeds. FALSE otherwise - virtual BOOL addToFolder(LLFolderViewFolder* folder, LLFolderView* root); + virtual BOOL addToFolder(LLFolderViewFolder* folder); // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. virtual S32 arrange( S32* width, S32* height, S32 filter_generation ); BOOL needsArrange(); - void requestSort(); - - // Returns the sort group (system, trash, folder) for this folder. - virtual EInventorySortGroup getSortGroup() const; virtual void setCompletedFilterGeneration(S32 generation, BOOL recurse_up); virtual S32 getCompletedFilterGeneration() { return mCompletedFilterGeneration; } @@ -478,15 +431,11 @@ public: // extractItem() removes the specified item from the folder, but // doesn't delete it. - void extractItem( LLFolderViewItem* item ); + virtual void extractItem( LLFolderViewItem* item ); // This function is called by a child that needs to be resorted. void resort(LLFolderViewItem* item); - void setItemSortOrder(U32 ordering); - void sortBy(U32); - //BOOL (*func)(LLFolderViewItem* a, LLFolderViewItem* b)); - void setAutoOpenCountdown(F32 countdown) { mAutoOpenCountdown = countdown; } // folders can be opened. This will usually be called by internal @@ -500,6 +449,8 @@ public: // don't rearrange child folder contents unless explicitly requested virtual void requestArrange(BOOL include_descendants = FALSE); + virtual void requestSort(); + // internal method which doesn't update the entire view. This // method was written because the list iterators destroy the state // of other iterations, thus, we can't arrange while iterating @@ -518,7 +469,6 @@ public: std::string& tooltip_msg); void applyFunctorRecursively(LLFolderViewFunctor& functor); - virtual void applyListenerFunctorRecursively(LLFolderViewListenerFunctor& functor); // Just apply this functor to the folder's immediate children. void applyFunctorToChildren(LLFolderViewFunctor& functor); @@ -544,32 +494,18 @@ public: std::string& tooltip_msg); virtual void draw(); - time_t getCreationDate() const; - bool isTrash() const; - folders_t::const_iterator getFoldersBegin() const { return mFolders.begin(); } - folders_t::const_iterator getFoldersEnd() const { return mFolders.end(); } + folders_t::iterator getFoldersBegin() const { return mFolders.begin(); } + folders_t::iterator getFoldersEnd() const { return mFolders.end(); } folders_t::size_type getFoldersCount() const { return mFolders.size(); } - items_t::const_iterator getItemsBegin() const { return mItems.begin(); } - items_t::const_iterator getItemsEnd() const { return mItems.end(); } + items_t::iterator getItemsBegin() const { return mItems.begin(); } + items_t::iterator getItemsEnd() const { return mItems.end(); } items_t::size_type getItemsCount() const { return mItems.size(); } + LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse); void gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items); }; -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -// Class LLFolderViewListenerFunctor -// -// This simple abstract base class can be used to applied to all -// listeners in a hierarchy. -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -class LLFolderViewListenerFunctor -{ -public: - virtual ~LLFolderViewListenerFunctor() {} - virtual void operator()(LLFolderViewEventListener* listener) = 0; -}; #endif // LLFOLDERVIEWITEM_H diff --git a/indra/newview/llfriendcard.cpp b/indra/newview/llfriendcard.cpp index 11401d6c68..a64ddd185d 100644 --- a/indra/newview/llfriendcard.cpp +++ b/indra/newview/llfriendcard.cpp @@ -47,13 +47,13 @@ static const std::string INVENTORY_STRING_FRIENDS_ALL_SUBFOLDER = "All"; // helper functions // NOTE: For now Friends & All folders are created as protected folders of the LLFolderType::FT_CALLINGCARD type. -// So, their names will be processed in the LLFolderViewItem::refreshFromListener() to be localized +// So, their names will be processed in the LLFolderViewItem::refresh() to be localized // using "InvFolder LABEL_NAME" as LLTrans::findString argument. // We must use in this file their hard-coded names to ensure found them on different locales. EXT-5829. // These hard-coded names will be stored in InventoryItems but shown localized in FolderViewItems -// If hack in the LLFolderViewItem::refreshFromListener() to localize protected folder is removed +// If hack in the LLFolderViewItem::refresh() to localize protected folder is removed // or these folders are not protected these names should be localized in another place/way. inline const std::string get_friend_folder_name() { diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 2de2b17373..47444d3762 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -115,10 +115,10 @@ void teleport_via_landmark(const LLUUID& asset_id); static BOOL can_move_to_outfit(LLInventoryItem* inv_item, BOOL move_is_into_current_outfit); static bool check_category(LLInventoryModel* model, const LLUUID& cat_id, - LLFolderView* active_folder_view, + LLInventoryPanel* active_panel, LLInventoryFilter* filter); static bool check_item(const LLUUID& item_id, - LLFolderView* active_folder_view, + LLInventoryPanel* active_panel, LLInventoryFilter* filter); // Helper functions @@ -191,9 +191,24 @@ LLFolderType::EType LLInvFVBridge::getPreferredType() const // Folders don't have creation dates. time_t LLInvFVBridge::getCreationDate() const { - return 0; + LLInventoryObject* objectp = getInventoryObject(); + if (objectp) + { + return objectp->getCreationDate(); + } + return (time_t)0; +} + +void LLInvFVBridge::setCreationDate(time_t creation_date_utc) +{ + LLInventoryObject* objectp = getInventoryObject(); + if (objectp) + { + objectp->setCreationDate(creation_date_utc); + } } + // Can be destroyed (or moved to trash) BOOL LLInvFVBridge::isItemRemovable() const { @@ -233,7 +248,7 @@ void LLInvFVBridge::showProperties() */ } -void LLInvFVBridge::removeBatch(LLDynamicArray& batch) +void LLInvFVBridge::removeBatch(std::vector& batch) { // Deactivate gestures when moving them into Trash LLInvFVBridge* bridge; @@ -242,11 +257,11 @@ void LLInvFVBridge::removeBatch(LLDynamicArray& batc LLViewerInventoryCategory* cat = NULL; LLInventoryModel::cat_array_t descendent_categories; LLInventoryModel::item_array_t descendent_items; - S32 count = batch.count(); + S32 count = batch.size(); S32 i,j; for(i = 0; i < count; ++i) { - bridge = (LLInvFVBridge*)(batch.get(i)); + bridge = (LLInvFVBridge*)(batch[i]); if(!bridge || !bridge->isItemRemovable()) continue; item = (LLViewerInventoryItem*)model->getItem(bridge->getUUID()); if (item) @@ -259,7 +274,7 @@ void LLInvFVBridge::removeBatch(LLDynamicArray& batc } for(i = 0; i < count; ++i) { - bridge = (LLInvFVBridge*)(batch.get(i)); + bridge = (LLInvFVBridge*)(batch[i]); if(!bridge || !bridge->isItemRemovable()) continue; cat = (LLViewerInventoryCategory*)model->getCategory(bridge->getUUID()); if (cat) @@ -277,7 +292,7 @@ void LLInvFVBridge::removeBatch(LLDynamicArray& batc removeBatchNoCheck(batch); } -void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray& batch) +void LLInvFVBridge::removeBatchNoCheck(std::vector& batch) { // this method moves a bunch of items and folders to the trash. As // per design guidelines for the inventory model, the message is @@ -293,14 +308,14 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArrayisItemRemovable()) continue; item = (LLViewerInventoryItem*)model->getItem(bridge->getUUID()); if(item) @@ -313,7 +328,7 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArrayisItemRemovable()) continue; item = (LLViewerInventoryItem*)model->getItem(bridge->getUUID()); if(item) @@ -809,6 +824,12 @@ LLInventoryModel* LLInvFVBridge::getInventoryModel() const return panel ? panel->getModel() : NULL; } +LLInventoryFilter* getInventoryFilter() const +{ + LLInventoryPanel* panel = mInventoryPanel.get(); + return panel ? panel->getFilter() : NULL; +} + BOOL LLInvFVBridge::isItemInTrash() const { LLInventoryModel* model = getInventoryModel(); @@ -1183,7 +1204,7 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const if (can_list) { - LLFolderViewFolder * object_folderp = mRoot->getFolderByID(object_id); + LLFolderViewFolder * object_folderp = mInventoryPanel->getFolderByID(object_id); if (object_folderp) { can_list = !object_folderp->isLoading(); @@ -1194,7 +1215,7 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const { // Get outbox id const LLUUID & outbox_id = getInventoryModel()->findCategoryUUIDForType(LLFolderType::FT_OUTBOX, false); - LLFolderViewItem * outbox_itemp = mRoot->getItemByID(outbox_id); + LLFolderViewItem * outbox_itemp = mInventoryPanel->getItemByID(outbox_id); if (outbox_itemp) { @@ -1216,6 +1237,21 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const #endif } +LLToolDragAndDrop::ESource LLInvFVBridge::getDragSource() const +{ + if (gInventory.isObjectDescendentOf(getUUID(), gInventory.getRootFolderID())) + { + return LLToolDragAndDrop::SOURCE_AGENT; + } + else if (gInventory.isObjectDescendentOf(getUUID(), gInventory.getLibraryRootFolderID())) + { + return LLToolDragAndDrop::SOURCE_LIBRARY; + } + + return SOURCE_VIEWER; +} + + // +=================================================+ // | InventoryFVBridgeBuilder | @@ -1296,7 +1332,7 @@ void LLItemBridge::performAction(LLInventoryModel* model, std::string action) LLInventoryItem* itemp = model->getItem(mUUID); if (!itemp) return; - LLFolderViewItem* folder_view_itemp = mRoot->getItemByID(itemp->getParentUUID()); + LLFolderViewItem* folder_view_itemp = mInventoryPanel.get()->getItemByID(itemp->getParentUUID()); if (!folder_view_itemp) return; folder_view_itemp->getListener()->pasteFromClipboard(); @@ -1308,7 +1344,7 @@ void LLItemBridge::performAction(LLInventoryModel* model, std::string action) LLInventoryItem* itemp = model->getItem(mUUID); if (!itemp) return; - LLFolderViewItem* folder_view_itemp = mRoot->getItemByID(itemp->getParentUUID()); + LLFolderViewItem* folder_view_itemp = mInventoryPanel.get()->getItemByID(itemp->getParentUUID()); if (!folder_view_itemp) return; folder_view_itemp->getListener()->pasteLinkFromClipboard(); @@ -1718,6 +1754,60 @@ BOOL LLFolderBridge::isItemMovable() const void LLFolderBridge::selectItem() { } +std::string& LLFolderBridge::getDisplayName() const +{ + return mDisplayName; +} + + +void LLFolderBridge::update() +{ + bool possibly_has_children = false; + bool up_to_date = isUpToDate(); + if(!up_to_date && hasChildren()) // we know we have children but haven't fetched them (doesn't obey filter) + { + possibly_has_children = true; + } + + BOOL loading = (possibly_has_children + && !up_to_date ); + + if (loading != mIsLoading) + { + if ( loading && !mIsLoading ) + { + // Measure how long we've been in the loading state + mTimeSinceRequestStart.reset(); + } + + const BOOL in_inventory = gInventory.isObjectDescendentOf(getUUID(), gInventory.getRootFolderID()); + const BOOL in_library = gInventory.isObjectDescendentOf(getUUID(), gInventory.getLibraryRootFolderID()); + + bool root_is_loading = false; + if (in_inventory) + { + root_is_loading = LLInventoryModelBackgroundFetch::instance().inventoryFetchInProgress(); + } + if (in_library) + { + root_is_loading = LLInventoryModelBackgroundFetch::instance().libraryFetchInProgress(); + } + if ((mIsLoading + && mTimeSinceRequestStart.getElapsedTimeF32() >= gSavedSettings.getF32("FolderLoadingMessageWaitTime")) + || (LLInventoryModelBackgroundFetch::instance().folderFetchActive() + && root_is_loading)) + { + mDisplayName = LLInvFVBridge::getDisplayName() + " ( " + LLTrans::getString("LoadingData") + " ) "; + mIsLoading = true; + } + else + { + mDisplayName = LLInvFVBridge::getDisplayName(); + mIsLoading = false; + } + } +} + // Iterate through a folder's children to determine if @@ -1746,7 +1836,7 @@ BOOL LLFolderBridge::isItemRemovable() const } LLInventoryPanel* panel = mInventoryPanel.get(); - LLFolderViewFolder* folderp = dynamic_cast(panel ? panel->getRootFolder()->getItemByID(mUUID) : NULL); + LLFolderViewFolder* folderp = dynamic_cast(panel ? panel->getItemByID(mUUID) : NULL); if (folderp) { LLIsItemRemovable folder_test; @@ -1969,7 +2059,7 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat, LLInventoryPanel* destination_panel = mInventoryPanel.get(); if (!destination_panel) return false; - LLInventoryFilter* filter = destination_panel->getFilter(); + LLInventoryFilter* filter = getInventoryFilter(); if (!filter) return false; const LLUUID &cat_id = inv_cat->getUUID(); @@ -2188,7 +2278,7 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat, { // Check whether the folder being dragged from active inventory panel // passes the filter of the destination panel. - is_movable = check_category(model, cat_id, active_folder_view, filter); + is_movable = check_category(model, cat_id, active_panel, filter); } } } @@ -2621,7 +2711,7 @@ void LLFolderBridge::performAction(LLInventoryModel* model, std::string action) { if ("open" == action) { - LLFolderViewFolder *f = dynamic_cast(mRoot->getItemByID(mUUID)); + LLFolderViewFolder *f = dynamic_cast(mInventoryPanel.get()->getItemByID(mUUID)); if (f) { f->setOpen(TRUE); @@ -2890,7 +2980,7 @@ void LLFolderBridge::pasteFromClipboard() if (move_is_into_outbox) { - LLFolderViewItem * outbox_itemp = mRoot->getItemByID(mUUID); + LLFolderViewItem * outbox_itemp = mInventoryPanel.get()->getItemByID(mUUID); if (outbox_itemp) { @@ -3055,7 +3145,7 @@ BOOL LLFolderBridge::checkFolderForContentsOfType(LLInventoryModel* model, LLInv return ((item_array.count() > 0) ? TRUE : FALSE ); } -void LLFolderBridge::buildContextMenuBaseOptions(U32 flags) +void LLFolderBridge::buildContextMenuOptions(U32 flags, menuentry_vec_t& items, menuentry_vec_t& disabled_items) { LLInventoryModel* model = getInventoryModel(); llassert(model != NULL); @@ -3066,30 +3156,30 @@ void LLFolderBridge::buildContextMenuBaseOptions(U32 flags) if (lost_and_found_id == mUUID) { // This is the lost+found folder. - mItems.push_back(std::string("Empty Lost And Found")); + items.push_back(std::string("Empty Lost And Found")); - mDisabledItems.push_back(std::string("New Folder")); - mDisabledItems.push_back(std::string("New Script")); - mDisabledItems.push_back(std::string("New Note")); - mDisabledItems.push_back(std::string("New Gesture")); - mDisabledItems.push_back(std::string("New Clothes")); - mDisabledItems.push_back(std::string("New Body Parts")); - } + disabled_items.push_back(std::string("New Folder")); + disabled_items.push_back(std::string("New Script")); + disabled_items.push_back(std::string("New Note")); + disabled_items.push_back(std::string("New Gesture")); + disabled_items.push_back(std::string("New Clothes")); + disabled_items.push_back(std::string("New Body Parts")); + } if(trash_id == mUUID) { // This is the trash. - mItems.push_back(std::string("Empty Trash")); + items.push_back(std::string("Empty Trash")); } else if(isItemInTrash()) { // This is a folder in the trash. - mItems.clear(); // clear any items that used to exist - addTrashContextMenuOptions(mItems, mDisabledItems); + items.clear(); // clear any items that used to exist + addTrashContextMenuOptions(items, disabled_items); } else if(isOutboxFolder()) { - addOutboxContextMenuOptions(flags, mItems, mDisabledItems); + addOutboxContextMenuOptions(flags, items, disabled_items); } else if(isAgentInventory()) // do not allow creating in library { @@ -3103,40 +3193,40 @@ void LLFolderBridge::buildContextMenuBaseOptions(U32 flags) // Do not allow to create 2-level subfolder in the Calling Card/Friends folder. EXT-694. if (!LLFriendCardsManager::instance().isCategoryInFriendFolder(cat)) { - mItems.push_back(std::string("New Folder")); + items.push_back(std::string("New Folder")); } - mItems.push_back(std::string("New Script")); - mItems.push_back(std::string("New Note")); - mItems.push_back(std::string("New Gesture")); - mItems.push_back(std::string("New Clothes")); - mItems.push_back(std::string("New Body Parts")); + items.push_back(std::string("New Script")); + items.push_back(std::string("New Note")); + items.push_back(std::string("New Gesture")); + items.push_back(std::string("New Clothes")); + items.push_back(std::string("New Body Parts")); } #if SUPPORT_ENSEMBLES // Changing folder types is an unfinished unsupported feature // and can lead to unexpected behavior if enabled. - mItems.push_back(std::string("Change Type")); + items.push_back(std::string("Change Type")); const LLViewerInventoryCategory *cat = getCategory(); if (cat && LLFolderType::lookupIsProtectedType(cat->getPreferredType())) { - mDisabledItems.push_back(std::string("Change Type")); + disabled_items.push_back(std::string("Change Type")); } #endif - getClipboardEntries(false, mItems, mDisabledItems, flags); + getClipboardEntries(false, items, disabled_items, flags); } else { // Want some but not all of the items from getClipboardEntries for outfits. if (cat && (cat->getPreferredType() == LLFolderType::FT_OUTFIT)) { - mItems.push_back(std::string("Rename")); + items.push_back(std::string("Rename")); - addDeleteContextMenuOptions(mItems, mDisabledItems); + addDeleteContextMenuOptions(items, disabled_items); // EXT-4030: disallow deletion of currently worn outfit const LLViewerInventoryItem *base_outfit_link = LLAppearanceMgr::instance().getBaseOutfitLink(); if (base_outfit_link && (cat == base_outfit_link->getLinkedCategory())) { - mDisabledItems.push_back(std::string("Delete")); + disabled_items.push_back(std::string("Delete")); } } } @@ -3165,20 +3255,41 @@ void LLFolderBridge::buildContextMenuBaseOptions(U32 flags) // Preemptively disable system folder removal if more than one item selected. if ((flags & FIRST_SELECTED_ITEM) == 0) { - mDisabledItems.push_back(std::string("Delete System Folder")); + disabled_items.push_back(std::string("Delete System Folder")); } if (!isOutboxFolder()) { - mItems.push_back(std::string("Share")); + items.push_back(std::string("Share")); if (!canShare()) { - mDisabledItems.push_back(std::string("Share")); + disabled_items.push_back(std::string("Share")); + } + } + // Add menu items that are dependent on the contents of the folder. + LLViewerInventoryCategory* category = (LLViewerInventoryCategory *) model->getCategory(mUUID); + if (category) + { + uuid_vec_t folders; + folders.push_back(category->getUUID()); + + sSelf = getHandle(); + LLRightClickInventoryFetchDescendentsObserver* fetch = new LLRightClickInventoryFetchDescendentsObserver(folders, FALSE); + fetch->startFetch(); + inc_busy_count(); + if (fetch->isFinished()) + { + buildContextMenuFolderOptions(flags, items, disabled_items); + } + else + { + // it's all on its way - add an observer, and the inventory will call done for us when everything is here. + gInventory.addObserver(fetch); } } } -void LLFolderBridge::buildContextMenuFolderOptions(U32 flags) +void LLFolderBridge::buildContextMenuFolderOptions(U32 flags, menuentry_vec_t& items, menuentry_vec_t& disabled_items) { // Build folder specific options back up LLInventoryModel* model = getInventoryModel(); @@ -3205,21 +3316,21 @@ void LLFolderBridge::buildContextMenuFolderOptions(U32 flags) LLIsType is_callingcard(LLAssetType::AT_CALLINGCARD); if (mCallingCards || checkFolderForContentsOfType(model, is_callingcard)) { - mItems.push_back(std::string("Calling Card Separator")); - mItems.push_back(std::string("Conference Chat Folder")); - mItems.push_back(std::string("IM All Contacts In Folder")); + items.push_back(std::string("Calling Card Separator")); + items.push_back(std::string("Conference Chat Folder")); + items.push_back(std::string("IM All Contacts In Folder")); } } if (!isItemRemovable()) { - mDisabledItems.push_back(std::string("Delete")); + disabled_items.push_back(std::string("Delete")); } #ifndef LL_RELEASE_FOR_DOWNLOAD if (LLFolderType::lookupIsProtectedType(type)) { - mItems.push_back(std::string("Delete System Folder")); + items.push_back(std::string("Delete System Folder")); } #endif @@ -3234,7 +3345,7 @@ void LLFolderBridge::buildContextMenuFolderOptions(U32 flags) checkFolderForContentsOfType(model, is_object) || checkFolderForContentsOfType(model, is_gesture) ) { - mItems.push_back(std::string("Folder Wearables Separator")); + items.push_back(std::string("Folder Wearables Separator")); // Only enable add/replace outfit for non-system folders. if (!is_system_folder) @@ -3242,25 +3353,25 @@ void LLFolderBridge::buildContextMenuFolderOptions(U32 flags) // Adding an outfit onto another (versus replacing) doesn't make sense. if (type != LLFolderType::FT_OUTFIT) { - mItems.push_back(std::string("Add To Outfit")); + items.push_back(std::string("Add To Outfit")); } - mItems.push_back(std::string("Replace Outfit")); + items.push_back(std::string("Replace Outfit")); } if (is_ensemble) { - mItems.push_back(std::string("Wear As Ensemble")); + items.push_back(std::string("Wear As Ensemble")); } - mItems.push_back(std::string("Remove From Outfit")); + items.push_back(std::string("Remove From Outfit")); if (!LLAppearanceMgr::getCanRemoveFromCOF(mUUID)) { - mDisabledItems.push_back(std::string("Remove From Outfit")); + disabled_items.push_back(std::string("Remove From Outfit")); } if (!LLAppearanceMgr::instance().getCanReplaceCOF(mUUID)) { - mDisabledItems.push_back(std::string("Replace Outfit")); + disabled_items.push_back(std::string("Replace Outfit")); } - mItems.push_back(std::string("Outfit Separator")); + items.push_back(std::string("Outfit Separator")); } } @@ -3269,39 +3380,16 @@ void LLFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags) { sSelf.markDead(); - mItems.clear(); - mDisabledItems.clear(); + menuentry_vec_t items; + menuentry_vec_t disabled_items; lldebugs << "LLFolderBridge::buildContextMenu()" << llendl; LLInventoryModel* model = getInventoryModel(); if(!model) return; - buildContextMenuBaseOptions(flags); - - // Add menu items that are dependent on the contents of the folder. - LLViewerInventoryCategory* category = (LLViewerInventoryCategory *) model->getCategory(mUUID); - if (category) - { - uuid_vec_t folders; - folders.push_back(category->getUUID()); - - sSelf = getHandle(); - LLRightClickInventoryFetchDescendentsObserver* fetch = new LLRightClickInventoryFetchDescendentsObserver(folders, FALSE); - fetch->startFetch(); - inc_busy_count(); - if (fetch->isFinished()) - { - buildContextMenuFolderOptions(flags); - } - else - { - // it's all on its way - add an observer, and the inventory will call done for us when everything is here. - gInventory.addObserver(fetch); - } - } - - hide_context_entries(menu, mItems, mDisabledItems); + buildContextMenuBaseOptions(flags, items, disabled_items); + hide_context_entries(menu, items, disabled_items); // Reposition the menu, in case we're adding items to an existing menu. menu.needsArrange(); @@ -3402,9 +3490,7 @@ void LLFolderBridge::createNewCategory(void* user_data) { LLFolderBridge* bridge = (LLFolderBridge*)user_data; if(!bridge) return; - LLInventoryPanel* panel = bridge->mInventoryPanel.get(); - if (!panel) return; - LLInventoryModel* model = panel->getModel(); + LLInventoryModel* model = bridge->getInventoryModel(); if(!model) return; LLUUID id; id = model->createNewCategory(bridge->getUUID(), @@ -3482,6 +3568,24 @@ void LLFolderBridge::createNewEyes(void* user_data) LLFolderBridge::createWearable((LLFolderBridge*)user_data, LLWearableType::WT_EYES); } +EInventorySortGroup LLFolderBridge::getSortGroup() const +{ + LLFolderType::EType preferred_type = getPreferredType(); + + if (preferred_type == LLFolderType::FT_TRASH) + { + return SG_TRASH_FOLDER; + } + + if(LLFolderType::lookupIsProtectedType(preferred_type)) + { + return SG_SYSTEM_FOLDER; + } + + return SG_NORMAL_FOLDER; +} + + // static void LLFolderBridge::createWearable(LLFolderBridge* bridge, LLWearableType::EType type) { @@ -3635,7 +3739,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, LLInventoryPanel* destination_panel = mInventoryPanel.get(); if (!destination_panel) return false; - LLInventoryFilter* filter = destination_panel->getFilter(); + LLInventoryFilter* filter = getInventoryFilter(); if (!filter) return false; const LLUUID ¤t_outfit_id = model->findCategoryUUIDForType(LLFolderType::FT_CURRENT_OUTFIT, false); @@ -3752,10 +3856,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, // passes the filter of the destination panel. if (accept && active_panel) { - LLFolderView* active_folder_view = active_panel->getRootFolder(); - if (!active_folder_view) return false; - - LLFolderViewItem* fv_item = active_folder_view->getItemByID(inv_item->getUUID()); + LLFolderViewItem* fv_item = active_panel->getItemByID(inv_item->getUUID()); if (!fv_item) return false; accept = filter->check(fv_item); @@ -3770,10 +3871,12 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, } // If an item is being dragged between windows, unselect everything in the active window // so that we don't follow the selection to its new location (which is very annoying). + // RN: a better solution would be to deselect automatically when an item is moved + // and then select any item that is dropped only in the panel that it is dropped in if (active_panel && (destination_panel != active_panel)) - { - active_panel->unSelectAll(); - } + { + active_panel->unSelectAll(); + } //-------------------------------------------------------------------------------- // Destination folder logic @@ -3975,10 +4078,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, // passes the filter of the destination panel. if (accept && active_panel) { - LLFolderView* active_folder_view = active_panel->getRootFolder(); - if (!active_folder_view) return false; - - LLFolderViewItem* fv_item = active_folder_view->getItemByID(inv_item->getUUID()); + LLFolderViewItem* fv_item = active_panel->getItemByID(inv_item->getUUID()); if (!fv_item) return false; accept = filter->check(fv_item); @@ -4021,10 +4121,10 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, // static bool check_category(LLInventoryModel* model, const LLUUID& cat_id, - LLFolderView* active_folder_view, + LLInventoryPanel* active_panel, LLInventoryFilter* filter) { - if (!model || !active_folder_view || !filter) + if (!model || !active_panel || !filter) return false; if (!filter->checkFolder(cat_id)) @@ -4044,13 +4144,13 @@ bool check_category(LLInventoryModel* model, // Empty folder should be checked as any other folder view item. // If we are filtering by date the folder should not pass because // it doesn't have its own creation date. See LLInvFVBridge::getCreationDate(). - return check_item(cat_id, active_folder_view, filter); + return check_item(cat_id, active_panel, filter); } for (S32 i = 0; i < num_descendent_categories; ++i) { LLInventoryCategory* category = descendent_categories[i]; - if(!check_category(model, category->getUUID(), active_folder_view, filter)) + if(!check_category(model, category->getUUID(), active_panel, filter)) { return false; } @@ -4059,7 +4159,7 @@ bool check_category(LLInventoryModel* model, for (S32 i = 0; i < num_descendent_items; ++i) { LLViewerInventoryItem* item = descendent_items[i]; - if(!check_item(item->getUUID(), active_folder_view, filter)) + if(!check_item(item->getUUID(), active_panel, filter)) { return false; } @@ -4070,12 +4170,12 @@ bool check_category(LLInventoryModel* model, // static bool check_item(const LLUUID& item_id, - LLFolderView* active_folder_view, + LLInventoryPanel* active_panel, LLInventoryFilter* filter) { - if (!active_folder_view || !filter) return false; + if (!active_panel || !filter) return false; - LLFolderViewItem* fv_item = active_folder_view->getItemByID(item_id); + LLFolderViewItem* fv_item = active_panel->getItemByID(item_id); if (!fv_item) return false; return filter->check(fv_item); @@ -4404,7 +4504,7 @@ LLCallingCardBridge::~LLCallingCardBridge() void LLCallingCardBridge::refreshFolderViewItem() { LLInventoryPanel* panel = mInventoryPanel.get(); - LLFolderViewItem* itemp = panel ? panel->getRootFolder()->getItemByID(mUUID) : NULL; + LLFolderViewItem* itemp = panel ? panel->getItemByID(mUUID) : NULL; if (itemp) { itemp->refresh(); @@ -5897,7 +5997,8 @@ void LLLinkFolderBridge::gotoItem() const LLUUID &cat_uuid = getFolderID(); if (!cat_uuid.isNull()) { - if (LLFolderViewItem *base_folder = mRoot->getItemByID(cat_uuid)) + LLFolderViewItem *base_folder = mInventoryPanel.get()->getItemByID(cat_uuid) + if (base_folder) { if (LLInventoryModel* model = getInventoryModel()) { @@ -6235,9 +6336,8 @@ LLInvFVBridgeAction* LLInvFVBridgeAction::createAction(LLAssetType::EType asset_ /************************************************************************/ void LLRecentItemsFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags) { - LLFolderBridge::buildContextMenu(menu, flags); - - menuentry_vec_t disabled_items, items = getMenuItems(); + menuentry_vec_t disabled_items, items; + buildContextMenuOptions(flags, items, disabled_items); items.erase(std::remove(items.begin(), items.end(), std::string("New Folder")), items.end()); @@ -6286,5 +6386,4 @@ LLInvFVBridge* LLRecentInventoryBridgeBuilder::createBridge( } - // EOF diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index 3b4f845f54..e9c54dc4bc 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -32,6 +32,7 @@ #include "llfoldervieweventlistener.h" #include "llinventorymodel.h" #include "llinventoryobserver.h" +#include "llinventorypanel.h" #include "llviewercontrol.h" #include "llwearable.h" @@ -41,7 +42,7 @@ class LLInventoryModel; class LLMenuGL; class LLCallingCardObserver; class LLViewerJointAttachment; - +class LLFolderView; typedef std::vector menuentry_vec_t; @@ -56,7 +57,7 @@ typedef std::vector menuentry_vec_t; // functionality a bit. (except for folders, you can create those // manually...) //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -class LLInvFVBridge : public LLFolderViewEventListener +class LLInvFVBridge : public LLFolderViewModelItemInventory { public: // This method is a convenience function which creates the correct @@ -83,13 +84,14 @@ public: virtual void restoreToWorld() {} //-------------------------------------------------------------------- - // Inherited LLFolderViewEventListener functions + // Inherited LLFolderViewModelItemInventory functions //-------------------------------------------------------------------- virtual const std::string& getName() const; virtual const std::string& getDisplayName() const; virtual PermissionMask getPermissionMask() const; virtual LLFolderType::EType getPreferredType() const; virtual time_t getCreationDate() const; + virtual void setCreationDate(time_t creation_date_utc); virtual LLFontGL::StyleFlags getLabelStyle() const { return LLFontGL::NORMAL; } virtual std::string getLabelSuffix() const { return LLStringUtil::null; } virtual void openItem() {} @@ -103,8 +105,8 @@ public: virtual BOOL isItemInTrash() const; virtual BOOL isLink() const; //virtual BOOL removeItem() = 0; - virtual void removeBatch(LLDynamicArray& batch); - virtual void move(LLFolderViewEventListener* new_parent_bridge) {} + virtual void removeBatch(std::vector& batch); + virtual void move(LLFolderViewModelItem* new_parent_bridge) {} virtual BOOL isItemCopyable() const { return FALSE; } virtual BOOL copyToClipboard() const { return FALSE; } virtual void cutToClipboard(); @@ -115,6 +117,7 @@ public: void getClipboardEntries(bool show_asset_id, menuentry_vec_t &items, menuentry_vec_t &disabled_items, U32 flags); virtual void buildContextMenu(LLMenuGL& menu, U32 flags); + virtual LLToolDragAndDrop::ESource getDragSource() const; virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const; virtual BOOL dragOrDrop(MASK mask, BOOL drop, EDragAndDropType cargo_type, @@ -122,6 +125,7 @@ public: std::string& tooltip_msg) { return FALSE; } virtual LLInventoryType::EType getInventoryType() const { return mInvType; } virtual LLWearableType::EType getWearableType() const { return LLWearableType::WT_NONE; } + EInventorySortGroup getSortGroup() const { return SG_ITEM; } //-------------------------------------------------------------------- // Convenience functions for adding various common menu options. @@ -140,14 +144,15 @@ protected: LLInventoryObject* getInventoryObject() const; LLInventoryModel* getInventoryModel() const; - + LLInventoryFilter* getInventoryFilter() const; + BOOL isLinkedObjectInTrash() const; // Is this obj or its baseobj in the trash? BOOL isLinkedObjectMissing() const; // Is this a linked obj whose baseobj is not in inventory? - BOOL isAgentInventory() const; // false if lost or in the inventory library - BOOL isCOFFolder() const; // true if COF or descendent of - BOOL isInboxFolder() const; // true if COF or descendent of marketplace inbox - BOOL isOutboxFolder() const; // true if COF or descendent of marketplace outbox + BOOL isAgentInventory() const; // false if lost or in the inventory library + BOOL isCOFFolder() const; // true if COF or descendant of + BOOL isInboxFolder() const; // true if COF or descendant of marketplace inbox + BOOL isOutboxFolder() const; // true if COF or descendant of marketplace outbox BOOL isOutboxFolderDirectParent() const; const LLUUID getOutboxFolder() const; @@ -160,13 +165,14 @@ protected: LLViewerInventoryCategory* item, const LLUUID& new_parent, BOOL restamp); - void removeBatchNoCheck(LLDynamicArray& batch); + void removeBatchNoCheck(std::vector& batch); protected: - LLHandle mInventoryPanel; - LLFolderView* mRoot; - const LLUUID mUUID; // item id - LLInventoryType::EType mInvType; - BOOL mIsLink; + LLHandle mInventoryPanel; + LLFolderView* mRoot; + const LLUUID mUUID; // item id + LLInventoryType::EType mInvType; + bool mIsLink; + LLTimer mTimeSinceRequestStart; void purgeItem(LLInventoryModel *model, const LLUUID &uuid); }; @@ -233,15 +239,18 @@ class LLFolderBridge : public LLInvFVBridge public: LLFolderBridge(LLInventoryPanel* inventory, LLFolderView* root, - const LLUUID& uuid) : - LLInvFVBridge(inventory, root, uuid), + const LLUUID& uuid) + : LLInvFVBridge(inventory, root, uuid), mCallingCards(FALSE), - mWearables(FALSE) + mWearables(FALSE), + mIsLoading(false) {} BOOL dragItemIntoFolder(LLInventoryItem* inv_item, BOOL drop, std::string& tooltip_msg); BOOL dragCategoryIntoFolder(LLInventoryCategory* inv_category, BOOL drop, std::string& tooltip_msg); + const std::string& getDisplayName() const; + virtual void performAction(LLInventoryModel* model, std::string action); virtual void openItem(); virtual void closeItem(); @@ -277,14 +286,17 @@ public: virtual BOOL isClipboardPasteableAsLink() const; virtual BOOL copyToClipboard() const; + EInventorySortGroup getSortGroup() const; + virtual void update(); + static void createWearable(LLFolderBridge* bridge, LLWearableType::EType type); LLViewerInventoryCategory* getCategory() const; LLHandle getHandle() { mHandle.bind(this); return mHandle; } protected: - void buildContextMenuBaseOptions(U32 flags); - void buildContextMenuFolderOptions(U32 flags); + void buildContextMenuOptions(U32 flags, menuentry_vec_t& items, menuentry_vec_t& disabled_items); + void buildContextMenuFolderOptions(U32 flags, menuentry_vec_t& items, menuentry_vec_t& disabled_items); //-------------------------------------------------------------------- // Menu callbacks @@ -310,8 +322,6 @@ protected: void modifyOutfit(BOOL append); void determineFolderType(); - menuentry_vec_t getMenuItems() { return mItems; } // returns a copy of current menu items - void dropToFavorites(LLInventoryItem* inv_item); void dropToOutfit(LLInventoryItem* inv_item, BOOL move_is_into_current_outfit); @@ -323,11 +333,12 @@ public: static void staticFolderOptionsMenu(); private: - BOOL mCallingCards; - BOOL mWearables; - menuentry_vec_t mItems; - menuentry_vec_t mDisabledItems; - LLRootHandle mHandle; + bool mCallingCards; + bool mWearables; + bool mIsLoading; + LLTimer mTimeSinceRequestStart; + std::string mDisplayName; + LLRootHandle mHandle; }; class LLTextureBridge : public LLItemBridge diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 5496c273f2..9c84be5eac 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -41,39 +41,39 @@ // linden library includes #include "lltrans.h" -LLInventoryFilter::FilterOps::FilterOps() : - mFilterObjectTypes(0xffffffffffffffffULL), - mFilterCategoryTypes(0xffffffffffffffffULL), - mFilterWearableTypes(0xffffffffffffffffULL), - mMinDate(time_min()), - mMaxDate(time_max()), - mHoursAgo(0), - mShowFolderState(SHOW_NON_EMPTY_FOLDERS), - mPermissions(PERM_NONE), - mFilterTypes(FILTERTYPE_OBJECT), - mFilterUUID(LLUUID::null), - mFilterLinks(FILTERLINK_INCLUDE_LINKS) +LLInventoryFilter::FilterOps::FilterOps(const Params& p) +: mFilterObjectTypes(p.object_types), + mFilterCategoryTypes(p.category_types), + mFilterWearableTypes(p.wearable_types), + mMinDate(p.date_range.min_date), + mMaxDate(p.date_range.max_date), + mHoursAgo(p.hours_ago), + mShowFolderState(p.show_folder_state), + mPermissions(p.permissions), + mFilterTypes(p.types), + mFilterUUID(p.uuid), + mFilterLinks(p.links) { } ///---------------------------------------------------------------------------- /// Class LLInventoryFilter ///---------------------------------------------------------------------------- -LLInventoryFilter::LLInventoryFilter(const std::string& name) +LLInventoryFilter::LLInventoryFilter(const std::string& name, const Params& p) : mName(name), mModified(FALSE), mNeedTextRebuild(TRUE), - mEmptyLookupMessage("InventoryNoMatchingItems") + mEmptyLookupMessage("InventoryNoMatchingItems"), + mFilterOps(p.filter_ops) { - mOrder = SO_FOLDERS_BY_NAME; // This gets overridden by a pref immediately + mOrder = p.sort_order; // This gets overridden by a pref immediately - mSubStringMatchOffset = 0; - mFilterSubString.clear(); - mFilterGeneration = 0; - mMustPassGeneration = S32_MAX; - mMinRequiredGeneration = 0; + mFilterSubString(p.substring); + mLastSuccessGeneration = 0; + mLastFailGeneration = S32_MAX; + getFirstSuccessGeneration = 0; mFilterCount = 0; - mNextFilterGeneration = mFilterGeneration + 1; + mNextFilterGeneration = mLastSuccessGeneration + 1; mLastLogoff = gSavedPerAccountSettings.getU32("LastLogoff"); mFilterBehavior = FILTER_NONE; @@ -95,7 +95,7 @@ BOOL LLInventoryFilter::check(const LLFolderViewItem* item) return TRUE; } - mSubStringMatchOffset = mFilterSubString.size() ? item->getSearchableLabel().find(mFilterSubString) : std::string::npos; + std::string::size_type string_offset = mFilterSubString.size() ? item->getSearchableLabel().find(mFilterSubString) : std::string::npos; const BOOL passed_filtertype = checkAgainstFilterType(item); const BOOL passed_permissions = checkAgainstPermissions(item); @@ -103,20 +103,20 @@ BOOL LLInventoryFilter::check(const LLFolderViewItem* item) const BOOL passed = (passed_filtertype && passed_permissions && passed_filterlink && - (mFilterSubString.size() == 0 || mSubStringMatchOffset != std::string::npos)); + (mFilterSubString.size() == 0 || string_offset != std::string::npos)); return passed; } bool LLInventoryFilter::check(const LLInventoryItem* item) { - mSubStringMatchOffset = mFilterSubString.size() ? item->getName().find(mFilterSubString) : std::string::npos; + std::string::size_type string_offset = mFilterSubString.size() ? item->getName().find(mFilterSubString) : std::string::npos; const bool passed_filtertype = checkAgainstFilterType(item); const bool passed_permissions = checkAgainstPermissions(item); const bool passed = (passed_filtertype && passed_permissions && - (mFilterSubString.size() == 0 || mSubStringMatchOffset != std::string::npos)); + (mFilterSubString.size() == 0 || string_offset != std::string::npos)); return passed; } @@ -130,7 +130,7 @@ bool LLInventoryFilter::checkFolder(const LLFolderViewFolder* folder) const return false; } - const LLFolderViewEventListener* listener = folder->getListener(); + const LLFolderViewModelItemInventory* listener = folder->getListener(); if (!listener) { llwarns << "Folder view event listener not found." << llendl; @@ -168,7 +168,7 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const BOOL LLInventoryFilter::checkAgainstFilterType(const LLFolderViewItem* item) const { - const LLFolderViewEventListener* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getListener(); if (!listener) return FALSE; LLInventoryType::EType object_type = listener->getInventoryType(); @@ -311,7 +311,7 @@ bool LLInventoryFilter::checkAgainstFilterType(const LLInventoryItem* item) cons BOOL LLInventoryFilter::checkAgainstPermissions(const LLFolderViewItem* item) const { - const LLFolderViewEventListener* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getListener(); if (!listener) return FALSE; PermissionMask perm = listener->getPermissionMask(); @@ -339,7 +339,7 @@ bool LLInventoryFilter::checkAgainstPermissions(const LLInventoryItem* item) con BOOL LLInventoryFilter::checkAgainstFilterLinks(const LLFolderViewItem* item) const { - const LLFolderViewEventListener* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getListener(); if (!listener) return TRUE; const LLUUID object_id = listener->getUUID(); @@ -359,9 +359,9 @@ const std::string& LLInventoryFilter::getFilterSubString(BOOL trim) const return mFilterSubString; } -std::string::size_type LLInventoryFilter::getStringMatchOffset() const +std::string::size_type LLInventoryFilter::getStringMatchOffset(LLFolderViewItem* item) const { - return mSubStringMatchOffset; + return mFilterSubString.size() ? item->getName().find(mFilterSubString) : std::string::npos; } // has user modified default filter params? @@ -685,7 +685,7 @@ void LLInventoryFilter::setModified(EFilterBehavior behavior) { mModified = TRUE; mNeedTextRebuild = TRUE; - mFilterGeneration = mNextFilterGeneration++; + mLastSuccessGeneration = mNextFilterGeneration++; if (mFilterBehavior == FILTER_NONE) { @@ -704,17 +704,17 @@ void LLInventoryFilter::setModified(EFilterBehavior behavior) switch(mFilterBehavior) { case FILTER_RESTART: - mMustPassGeneration = mFilterGeneration; - mMinRequiredGeneration = mFilterGeneration; + mLastFailGeneration = mLastSuccessGeneration; + mFirstSuccessGeneration = mLastSuccessGeneration; break; case FILTER_LESS_RESTRICTIVE: - mMustPassGeneration = mFilterGeneration; + mLastFailGeneration = mLastSuccessGeneration; break; case FILTER_MORE_RESTRICTIVE: - mMinRequiredGeneration = mFilterGeneration; + mFirstSuccessGeneration = mLastSuccessGeneration; // must have passed either current filter generation (meaningless, as it hasn't been run yet) // or some older generation, so keep the value - mMustPassGeneration = llmin(mMustPassGeneration, mFilterGeneration); + mLastFailGeneration = llmin(mLastFailGeneration, mLastSuccessGeneration); break; default: llerrs << "Bad filter behavior specified" << llendl; @@ -930,60 +930,34 @@ const std::string& LLInventoryFilter::getFilterText() return mFilterText; } -void LLInventoryFilter::toLLSD(LLSD& data) const +void LLInventoryFilter::toParams(Params& params) const { - data["filter_types"] = (LLSD::Integer)getFilterObjectTypes(); - data["min_date"] = (LLSD::Integer)getMinDate(); - data["max_date"] = (LLSD::Integer)getMaxDate(); - data["hours_ago"] = (LLSD::Integer)getHoursAgo(); - data["show_folder_state"] = (LLSD::Integer)getShowFolderState(); - data["permissions"] = (LLSD::Integer)getFilterPermissions(); - data["substring"] = (LLSD::String)getFilterSubString(); - data["sort_order"] = (LLSD::Integer)getSortOrder(); - data["since_logoff"] = (LLSD::Boolean)isSinceLogoff(); + params.filter_ops.types = getFilterObjectTypes(); + params.filter_ops.date_range.min_date = getMinDate(); + params.filter_ops.date_range.max_date = getMaxDate(); + params.filter_ops.hours_ago = getHoursAgo(); + params.filter_ops.show_folder_state = getShowFolderState(); + params.filter_ops.permissions = getFilterPermissions(); + params.substring = getFilterSubString(); + params.sort_order = getSortOrder(); + params.since_logoff = isSinceLogoff(); } -void LLInventoryFilter::fromLLSD(LLSD& data) +void LLInventoryFilter::fromParams(const Params& data) { - if(data.has("filter_types")) + if (!params.validateBlock()) { - setFilterObjectTypes((U32)data["filter_types"].asInteger()); + return; } - if(data.has("min_date") && data.has("max_date")) - { - setDateRange(data["min_date"].asInteger(), data["max_date"].asInteger()); - } - - if(data.has("hours_ago")) - { - setHoursAgo((U32)data["hours_ago"].asInteger()); - } - - if(data.has("show_folder_state")) - { - setShowFolderState((EFolderShow)data["show_folder_state"].asInteger()); - } - - if(data.has("permissions")) - { - setFilterPermissions((PermissionMask)data["permissions"].asInteger()); - } - - if(data.has("substring")) - { - setFilterSubString(std::string(data["substring"].asString())); - } - - if(data.has("sort_order")) - { - setSortOrder((U32)data["sort_order"].asInteger()); - } - - if(data.has("since_logoff")) - { - setDateRangeLastLogoff((bool)data["since_logoff"].asBoolean()); - } + setFilterObjectTypes(params.filter_ops.types); + setDateRange(params.filter_ops.date_range.min_date, params.filter_ops.date_range.max_date); + setHoursAgo(params.filter_ops.hours_ago); + setShowFolderState(params.filter_ops.show_folder_state); + setFilterPermissions(params.filter_ops.permissions); + setFilterSubString(params.substring); + setSortOrder(params.sort_order); + setDateRangeLastLogoff(params.since_logoff); } U64 LLInventoryFilter::getFilterObjectTypes() const @@ -1052,15 +1026,15 @@ void LLInventoryFilter::decrementFilterCount() S32 LLInventoryFilter::getCurrentGeneration() const { - return mFilterGeneration; + return mLastSuccessGeneration; } -S32 LLInventoryFilter::getMinRequiredGeneration() const +S32 LLInventoryFilter::getFirstSuccessGeneration() const { - return mMinRequiredGeneration; + return mFirstSuccessGeneration; } -S32 LLInventoryFilter::getMustPassGeneration() const +S32 LLInventoryFilter::getFirstRequiredGeneration() const { - return mMustPassGeneration; + return mLastFailGeneration; } void LLInventoryFilter::setEmptyLookupMessage(const std::string& message) @@ -1068,9 +1042,13 @@ void LLInventoryFilter::setEmptyLookupMessage(const std::string& message) mEmptyLookupMessage = message; } +RN: turn this into a param const std::string& LLInventoryFilter::getEmptyLookupMessage() const { - return mEmptyLookupMessage; + LLStringUtil::format_map_t args; + args["[SEARCH_TERM]"] = LLURI::escape(getFilterSubStringOrig()); + + return LLTrans::getString(mEmptyLookupMessage, args); } @@ -1080,3 +1058,26 @@ bool LLInventoryFilter::areDateLimitsSet() || mFilterOps.mMaxDate != time_max() || mFilterOps.mHoursAgo != 0; } + +LLInventoryFilter& LLInventoryFilter::operator=( const LLInventoryFilter& other ) +{ + fromParams(other.toParams()); +} + + +bool LLInventoryFilter::FilterOps::DateRange::validateBlock( bool emit_errors /*= true*/ ) +{ + bool valid = LLInitParam::Block::validateBlock(emit_errors); + if (valid) + { + if (max_date() < min_date()) + { + if (emit_errors) + { + llwarns << "max_date should be greater or equal to min_date" << llendl; + } + valid = false; + } + } + return valid; +} diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index 6be2acfaa3..7f33be3878 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -34,7 +34,7 @@ class LLFolderViewItem; class LLFolderViewFolder; class LLInventoryItem; -class LLInventoryFilter +class LLInventoryFilter : public LLFolderViewFilter { public: enum EFolderShow @@ -53,13 +53,13 @@ public: }; enum EFilterType { - FILTERTYPE_NONE = 0, - FILTERTYPE_OBJECT = 0x1 << 0, // normal default search-by-object-type - FILTERTYPE_CATEGORY = 0x1 << 1, // search by folder type - FILTERTYPE_UUID = 0x1 << 2, // find the object with UUID and any links to it - FILTERTYPE_DATE = 0x1 << 3, // search by date range - FILTERTYPE_WEARABLE = 0x1 << 4, // search by wearable type - FILTERTYPE_EMPTYFOLDERS = 0x1 << 5 // pass if folder is not a system folder to be hidden if empty + FILTERTYPE_NONE = 0, + FILTERTYPE_OBJECT = 0x1 << 0, // normal default search-by-object-type + FILTERTYPE_CATEGORY = 0x1 << 1, // search by folder type + FILTERTYPE_UUID = 0x1 << 2, // find the object with UUID and any links to it + FILTERTYPE_DATE = 0x1 << 3, // search by date range + FILTERTYPE_WEARABLE = 0x1 << 4, // search by wearable type + FILTERTYPE_EMPTYFOLDERS = 0x1 << 5 // pass if folder is not a system folder to be hidden if }; enum EFilterLink @@ -71,13 +71,87 @@ public: enum ESortOrderType { - SO_NAME = 0, // Sort inventory by name - SO_DATE = 0x1, // Sort inventory by date - SO_FOLDERS_BY_NAME = 0x1 << 1, // Force folder sort by name - SO_SYSTEM_FOLDERS_TO_TOP = 0x1 << 2 // Force system folders to be on top + SO_NAME = 0, // Sort inventory by name + SO_DATE = 0x1, // Sort inventory by date + SO_FOLDERS_BY_NAME = 0x1 << 1, // Force folder sort by name + SO_SYSTEM_FOLDERS_TO_TOP = 0x1 << 2 // Force system folders to be on top }; - LLInventoryFilter(const std::string& name); + struct FilterOps + { + struct DateRange : public LLInitParam::Block + { + Optional min_date; + Optional max_date; + + DateRange() + : min_date("min_date", time_min()), + max_date("max_date", time_max()) + {} + + bool validateBlock(bool emit_errors = true); + }; + + struct Params : public LLInitParam::Block + { + Optional types; + Optional object_types, + wearable_types, + category_types; + Optional links; + Optional uuid; + Optional date_range; + Optional hours_ago; + Optional show_folder_state; + Optional permissions; + + Params() + : types("filter_types", FILTERTYPE_OBJECT), + object_types("object_types", 0xffffFFFFffffFFFFULL), + wearable_types("wearable_types", 0xffffFFFFffffFFFFULL), + category_types("category_types", 0xffffFFFFffffFFFFULL), + links("links", FILTERLINK_INCLUDE_LINKS), + uuid("uuid"), + date_range("date_range"), + hours_ago("hours_ago", 0), + show_folder_state("show_folder_state", SHOW_NON_EMPTY_FOLDERS), + permissions("permissions", PERM_NONE) + {} + }; + + FilterOps(const Params& = Params()); + + U32 mFilterTypes; + + U64 mFilterObjectTypes; // For _OBJECT + U64 mFilterWearableTypes; + U64 mFilterCategoryTypes; // For _CATEGORY + LLUUID mFilterUUID; // for UUID + + time_t mMinDate; + time_t mMaxDate; + U32 mHoursAgo; + EFolderShow mShowFolderState; + PermissionMask mPermissions; + U64 mFilterLinks; + }; + + struct Params : public LLInitParam::Block + { + Optional filter_ops; + Optional substring; + Optional sort_order; + Optional since_logoff; + + Params() + : filter_ops(""), + substring("substring"), + sort_order("sort_order"), + since_logoff("since_logoff") + {} + }; + + LLInventoryFilter(const std::string& name, const Params& p); virtual ~LLInventoryFilter(); // +-------------------------------------------------------------------+ @@ -86,7 +160,7 @@ public: void setFilterObjectTypes(U64 types); U64 getFilterObjectTypes() const; U64 getFilterCategoryTypes() const; - BOOL isFilterObjectTypesWith(LLInventoryType::EType t) const; + bool isFilterObjectTypesWith(LLInventoryType::EType t) const; void setFilterCategoryTypes(U64 types); void setFilterUUID(const LLUUID &object_id); void setFilterWearableTypes(U64 types); @@ -96,7 +170,7 @@ public: void setFilterSubString(const std::string& string); const std::string& getFilterSubString(BOOL trim = FALSE) const; const std::string& getFilterSubStringOrig() const { return mFilterSubStringOrig; } - BOOL hasFilterString() const; + bool hasFilterString() const; void setFilterPermissions(PermissionMask perms); PermissionMask getFilterPermissions() const; @@ -115,18 +189,17 @@ public: // +-------------------------------------------------------------------+ // + Execution And Results // +-------------------------------------------------------------------+ - BOOL check(const LLFolderViewItem* item); + bool check(const LLFolderViewItem* item); bool check(const LLInventoryItem* item); bool checkFolder(const LLFolderViewFolder* folder) const; bool checkFolder(const LLUUID& folder_id) const; - BOOL checkAgainstFilterType(const LLFolderViewItem* item) const; + bool checkAgainstFilterType(const LLFolderViewItem* item) const; bool checkAgainstFilterType(const LLInventoryItem* item) const; - BOOL checkAgainstPermissions(const LLFolderViewItem* item) const; + bool checkAgainstPermissions(const LLFolderViewItem* item) const; bool checkAgainstPermissions(const LLInventoryItem* item) const; - BOOL checkAgainstFilterLinks(const LLFolderViewItem* item) const; - - std::string::size_type getStringMatchOffset() const; + bool checkAgainstFilterLinks(const LLFolderViewItem* item) const; + std::string::size_type getStringMatchOffset(LLFolderViewItem* item) const; // +-------------------------------------------------------------------+ // + Presentation // +-------------------------------------------------------------------+ @@ -142,10 +215,10 @@ public: // +-------------------------------------------------------------------+ // + Status // +-------------------------------------------------------------------+ - BOOL isActive() const; - BOOL isModified() const; - BOOL isModifiedAndClear(); - BOOL isSinceLogoff() const; + bool isActive() const; + bool isModified() const; + bool isModifiedAndClear(); + bool isSinceLogoff() const; void clearModified(); const std::string& getName() const; const std::string& getFilterText(); @@ -162,7 +235,7 @@ public: // +-------------------------------------------------------------------+ // + Default // +-------------------------------------------------------------------+ - BOOL isNotDefault() const; + bool isNotDefault() const; void markDefault(); void resetDefault(); @@ -170,14 +243,17 @@ public: // + Generation // +-------------------------------------------------------------------+ S32 getCurrentGeneration() const; - S32 getMinRequiredGeneration() const; - S32 getMustPassGeneration() const; + S32 getFirstSuccessGeneration() const; + S32 getFirstRequiredGeneration() const; + // +-------------------------------------------------------------------+ // + Conversion // +-------------------------------------------------------------------+ - void toLLSD(LLSD& data) const; - void fromLLSD(LLSD& data); + void toParams(Params& params) const; + void fromParams(const Params& p); + + LLInventoryFilter& operator =(const LLInventoryFilter& other); private: bool areDateLimitsSet(); @@ -203,7 +279,8 @@ private: U32 mOrder; U32 mLastLogoff; - FilterOps mFilterOps; + std::string::size_type mSubStringMatchOffset; + FilterOps mFilterOps; FilterOps mDefaultFilterOps; std::string::size_type mSubStringMatchOffset; @@ -211,9 +288,9 @@ private: std::string mFilterSubStringOrig; const std::string mName; - S32 mFilterGeneration; - S32 mMustPassGeneration; - S32 mMinRequiredGeneration; + S32 mLastSuccessGeneration; + S32 mLastFailGeneration; + S32 mFirstSuccessGeneration; S32 mNextFilterGeneration; S32 mFilterCount; diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 01a8ecfb5d..f5e2a23da0 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -37,6 +37,7 @@ #include "llfloaterreg.h" #include "llfloatersidepanelcontainer.h" #include "llfolderview.h" +#include "llfolderviewitem.h" #include "llimfloater.h" #include "llimview.h" #include "llinventorybridge.h" @@ -54,6 +55,62 @@ const std::string LLInventoryPanel::RECENTITEMS_SORT_ORDER = std::string("Recent const std::string LLInventoryPanel::INHERIT_SORT_ORDER = std::string(""); static const LLInventoryFVBridgeBuilder INVENTORY_BRIDGE_BUILDER; +// +// class LLFolderViewModelInventory +// +void LLFolderViewModelInventory::requestSort(class LLFolderViewFolder* folder) +{ + base_t::requestSort(folder); + if (getSorter().isByDate()) + { + // sort by date potentially affects parent folders which use a date + // derived from newest item in them + requestSort(folder->getParentFolder()); + } +} + +static LLFastTimer::DeclareTimer FTM_INVENTORY_SORT("Sort"); + +void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) +{ + LLFastTimer _(FTM_INVENTORY_SORT); + + if (!needsSort(folder)) return; + + LLFolderViewModelItemInventory* modelp = static_cast(folder->getListener()); + if (modelp->getUUID().isNull()) return; + + for (std::list::iterator it = folder->getFoldersBegin(), end_it = folder->getFoldersEnd(); + it != end_it; + ++it) + { + LLFolderViewFolder* child_folderp = *it; + sort(child_folderp); + + if (child_folderp->getFoldersCount() > 0) + { + time_t most_recent_folder_time = + static_cast(child_folderp->getFoldersBegin()->getListener())->getCreationDate(); + LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getListener()); + if (most_recent_folder_time > modelp->getCreationDate()) + { + modelp->setCreationDate(most_recent_folder_time); + } + } + if (child_folderp->getItemsCount() > 0) + { + time_t most_recent_item_time = + static_cast(child_folderp->getItemsBegin()->getListener())->getCreationDate(); + + LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getListener()); + if (most_recent_item_time > modelp->getCreationDate()) + { + modelp->setCreationDate(most_recent_item_time); + } + } + } + base_t::sort(folder); +} //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLInventoryPanelObserver @@ -133,7 +190,6 @@ LLInventoryPanel::LLInventoryPanel(const LLInventoryPanel::Params& p) : mAllowMultiSelect(p.allow_multi_select), mShowItemLinkOverlays(p.show_item_link_overlays), mShowEmptyMessage(p.show_empty_message), - mShowLoadStatus(p.show_load_status), mViewsInitialized(false), mInvFVBridgeBuilder(NULL) { @@ -253,14 +309,11 @@ void LLInventoryPanel::initFromParams(const LLInventoryPanel::Params& params) LLInventoryPanel::~LLInventoryPanel() { - if (mFolderRoot) - { - U32 sort_order = mFolderRoot->getSortOrder(); - if (mSortOrderSetting != INHERIT_SORT_ORDER) - { - gSavedSettings.setU32(mSortOrderSetting, sort_order); - } - } + U32 sort_order = getViewModel()->getSortOrder(); + if (mSortOrderSetting != INHERIT_SORT_ORDER) + { + gSavedSettings.setU32(mSortOrderSetting, sort_order); + } gIdleCallbacks.deleteFunction(onIdle, this); @@ -276,26 +329,18 @@ LLInventoryPanel::~LLInventoryPanel() void LLInventoryPanel::draw() { // Select the desired item (in case it wasn't loaded when the selection was requested) - mFolderRoot->updateSelection(); + updateSelection(); LLPanel::draw(); } LLInventoryFilter* LLInventoryPanel::getFilter() { - if (mFolderRoot) - { - return mFolderRoot->getFilter(); - } - return NULL; + return getViewModel()->getFilter(); } const LLInventoryFilter* LLInventoryPanel::getFilter() const { - if (mFolderRoot) - { - return mFolderRoot->getFilter(); - } - return NULL; + return getViewModel()->getFilter(); } void LLInventoryPanel::setFilterTypes(U64 types, LLInventoryFilter::EFilterType filter_type) @@ -308,12 +353,12 @@ void LLInventoryPanel::setFilterTypes(U64 types, LLInventoryFilter::EFilterType U32 LLInventoryPanel::getFilterObjectTypes() const { - return mFolderRoot->getFilterObjectTypes(); + return getFilter()->getFilterObjectTypes(); } U32 LLInventoryPanel::getFilterPermMask() const { - return mFolderRoot->getFilterPermissions(); + return getFilter()->getFilterPermissions(); } @@ -334,16 +379,17 @@ void LLInventoryPanel::setFilterSubString(const std::string& string) const std::string LLInventoryPanel::getFilterSubString() { - return mFolderRoot->getFilterSubString(); + return getFilter()->getFilterSubString(); } void LLInventoryPanel::setSortOrder(U32 order) { + LLInventorySort sorter(order); getFilter()->setSortOrder(order); - if (getFilter()->isModified()) + if (order != getViewModel()->getSortOrder()) { - mFolderRoot->setSortOrder(order); + getViewModel()->setSorter(LLInventorySort(order)); // try to keep selection onscreen, even if it wasn't to start with mFolderRoot->scrollToShowSelection(); } @@ -351,12 +397,7 @@ void LLInventoryPanel::setSortOrder(U32 order) U32 LLInventoryPanel::getSortOrder() const { - return mFolderRoot->getSortOrder(); -} - -void LLInventoryPanel::requestSort() -{ - mFolderRoot->requestSort(); + return getViewModel()->getSortOrder(); } void LLInventoryPanel::setSinceLogoff(BOOL sl) @@ -405,7 +446,7 @@ void LLInventoryPanel::modelChanged(U32 mask) { const LLUUID& item_id = (*items_iter); const LLInventoryObject* model_item = model->getObject(item_id); - LLFolderViewItem* view_item = mFolderRoot->getItemByID(item_id); + LLFolderViewItem* view_item = getItemByID(item_id); // LLFolderViewFolder is derived from LLFolderViewItem so dynamic_cast from item // to folder is the fast way to get a folder without searching through folders tree. @@ -439,6 +480,7 @@ void LLInventoryPanel::modelChanged(U32 mask) if (model_item && view_item) { view_item->destroyView(); + removeItemID(view_item->getListener()->getUUID()); } view_item = buildNewViews(item_id); view_folder = dynamic_cast(view_item); @@ -497,9 +539,9 @@ void LLInventoryPanel::modelChanged(U32 mask) else if (model_item && view_item) { // Don't process the item if it is the root - if (view_item->getRoot() != view_item) + if (view_item->getParentFolder()) { - LLFolderViewFolder* new_parent = (LLFolderViewFolder*)mFolderRoot->getItemByID(model_item->getParentUUID()); + LLFolderViewFolder* new_parent = (LLFolderViewFolder*)getItemByID(model_item->getParentUUID()); // Item has been moved. if (view_item->getParentFolder() != new_parent) { @@ -507,13 +549,15 @@ void LLInventoryPanel::modelChanged(U32 mask) { // Item is to be moved and we found its new parent in the panel's directory, so move the item's UI. view_item->getParentFolder()->extractItem(view_item); - view_item->addToFolder(new_parent, mFolderRoot); + view_item->addToFolder(new_parent); + addItemID(view_item->getListener()->getUUID(), view_item); } else { // Item is to be moved outside the panel's directory (e.g. moved to trash for a panel that // doesn't include trash). Just remove the item's UI. view_item->destroyView(); + removeItemID(view_item->getListener()->getUUID()); } } } @@ -526,6 +570,7 @@ void LLInventoryPanel::modelChanged(U32 mask) { // Remove the item's UI. view_item->destroyView(); + removeItemID(view_item->getListener()->getUUID()); } } } @@ -574,14 +619,14 @@ void LLInventoryPanel::initializeViews() if (gAgent.isFirstLogin()) { // Auto open the user's library - LLFolderViewFolder* lib_folder = mFolderRoot->getFolderByID(gInventory.getLibraryRootFolderID()); + LLFolderViewFolder* lib_folder = getFolderByID(gInventory.getLibraryRootFolderID()); if (lib_folder) { lib_folder->setOpen(TRUE); } // Auto close the user's my inventory folder - LLFolderViewFolder* my_inv_folder = mFolderRoot->getFolderByID(gInventory.getRootFolderID()); + LLFolderViewFolder* my_inv_folder = getFolderByID(gInventory.getRootFolderID()); if (my_inv_folder) { my_inv_folder->setOpenArrangeRecursively(FALSE, LLFolderViewFolder::RECURSE_DOWN); @@ -592,10 +637,11 @@ void LLInventoryPanel::initializeViews() LLFolderViewItem* LLInventoryPanel::rebuildViewsFor(const LLUUID& id) { // Destroy the old view for this ID so we can rebuild it. - LLFolderViewItem* old_view = mFolderRoot->getItemByID(id); + LLFolderViewItem* old_view = getItemByID(id); if (old_view) { old_view->destroyView(); + removeItemID(old_view->getListener()->getUUID()); } return buildNewViews(id); @@ -619,7 +665,6 @@ LLFolderView * LLInventoryPanel::createFolderView(LLInvFVBridge * bridge, bool u p.use_label_suffix = useLabelSuffix; p.allow_multiselect = mAllowMultiSelect; p.show_empty_message = mShowEmptyMessage; - p.show_load_status = mShowLoadStatus; return LLUICtrlFactory::create(p); } @@ -680,7 +725,7 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) else if (objectp) { const LLUUID &parent_id = objectp->getParentUUID(); - parent_folder = (LLFolderViewFolder*)mFolderRoot->getItemByID(parent_id); + parent_folder = (LLFolderViewFolder*)getItemByID(parent_id); if (parent_folder) { @@ -704,12 +749,7 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) objectp->getUUID()); if (new_listener) { - LLFolderViewFolder* folderp = createFolderViewFolder(new_listener); - if (folderp) - { - folderp->setItemSortOrder(mFolderRoot->getSortOrder()); - } - itemp = folderp; + itemp = createFolderViewFolder(new_listener); } } else @@ -732,7 +772,8 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) if (itemp) { - itemp->addToFolder(parent_folder, mFolderRoot); + itemp->addToFolder(parent_folder); + addItemID(itemp->getListener()->getUUID(), itemp); } } } @@ -904,7 +945,7 @@ void LLInventoryPanel::setSelection(const LLUUID& obj_id, BOOL take_keyboard_foc { return; } - mFolderRoot->setSelectionByID(obj_id, take_keyboard_focus); + setSelectionByID(obj_id, take_keyboard_focus); } void LLInventoryPanel::setSelectCallback(const boost::function& items, BOOL user_action)>& cb) @@ -917,7 +958,7 @@ void LLInventoryPanel::setSelectCallback(const boost::functionclearSelection(); + mSelectThisID.setNull(); } void LLInventoryPanel::onSelectionChange(const std::deque& items, BOOL user_action) @@ -953,12 +994,12 @@ void LLInventoryPanel::doToSelected(const LLSD& userdata) void LLInventoryPanel::doCreate(const LLSD& userdata) { - menu_create_inventory_item(mFolderRoot, LLFolderBridge::sSelf.get(), userdata); + menu_create_inventory_item(this, LLFolderBridge::sSelf.get(), userdata); } bool LLInventoryPanel::beginIMSession() { - std::set selected_items = mFolderRoot->getSelectionList(); + std::set selected_items = mFolderRoot->getSelectionList(); std::string name; static int session_num = 1; @@ -966,12 +1007,11 @@ bool LLInventoryPanel::beginIMSession() LLDynamicArray members; EInstantMessage type = IM_SESSION_CONFERENCE_START; - std::set::const_iterator iter; + std::set::const_iterator iter; for (iter = selected_items.begin(); iter != selected_items.end(); iter++) { - LLUUID item = *iter; - LLFolderViewItem* folder_item = mFolderRoot->getItemByID(item); + LLFolderViewItem* folder_item = (*iter); if(folder_item) { @@ -1013,8 +1053,6 @@ bool LLInventoryPanel::beginIMSession() } else { - LLFolderViewItem* folder_item = mFolderRoot->getItemByID(item); - if(!folder_item) return true; LLInvFVBridge* listenerp = (LLInvFVBridge*)folder_item->getListener(); if (listenerp->getInventoryType() == LLInventoryType::IT_CALLINGCARD) @@ -1056,13 +1094,13 @@ bool LLInventoryPanel::beginIMSession() bool LLInventoryPanel::attachObject(const LLSD& userdata) { // Copy selected item UUIDs to a vector. - std::set selected_items = mFolderRoot->getSelectionList(); + std::set selected_items = mFolderRoot->getSelectionList(); uuid_vec_t items; - for (std::set::const_iterator set_iter = selected_items.begin(); + for (std::set::const_iterator set_iter = selected_items.begin(); set_iter != selected_items.end(); ++set_iter) { - items.push_back(*set_iter); + items.push_back((*set_iter)->getListener()->getUUID()); } // Attach selected items. @@ -1209,6 +1247,84 @@ BOOL LLInventoryPanel::getIsHiddenFolderType(LLFolderType::EType folder_type) co return !(getFilter()->getFilterCategoryTypes() & (1ULL << folder_type)); } +void LLInventoryPanel::addItemID( const LLUUID& id, LLFolderViewItem* itemp ) +{ + mItemMap[id] = itemp; +} + +void LLInventoryPanel::removeItemID(const LLUUID& id) +{ + LLInventoryModel::cat_array_t categories; + LLInventoryModel::item_array_t items; + gInventory.collectDescendents(id, categories, items, TRUE); + + mItemMap.erase(id); + + for (LLInventoryModel::cat_array_t::iterator it = categories.begin(), end_it = categories.end(); + it != end_it; + ++it) + { + mItemMap.erase((*it)->getUUID()); + } + + for (LLInventoryModel::item_array_t::iterator it = items.begin(), end_it = items.end(); + it != end_it; + ++it) + { + mItemMap.erase((*it)->getUUID()); + } +} + +LLFastTimer::DeclareTimer FTM_GET_ITEM_BY_ID("Get FolderViewItem by ID"); +LLFolderViewItem* LLInventoryPanel::getItemByID(const LLUUID& id) +{ + LLFastTimer _(FTM_GET_ITEM_BY_ID); + if (id == mFolderRoot->getListener()->getUUID()) + { + return mFolderRoot; + } + + std::map::iterator map_it; + map_it = mItemMap.find(id); + if (map_it != mItemMap.end()) + { + return map_it->second; + } + + return NULL; +} + +LLFolderViewFolder* LLInventoryPanel::getFolderByID(const LLUUID& id) +{ + LLFolderViewItem* item = getItemByID(id); + return dynamic_cast(item); +} + + +void LLInventoryPanel::setSelectionByID( const LLUUID& obj_id, BOOL take_keyboard_focus ) +{ + LLFolderViewItem* itemp = getItemByID(obj_id); + if(itemp && itemp->getListener()) + { + itemp->arrangeAndSet(TRUE, take_keyboard_focus); + mSelectThisID.setNull(); + return; + } + else + { + // save the desired item to be selected later (if/when ready) + mSelectThisID = obj_id; + } +} + +void LLInventoryPanel::updateSelection() +{ + if (mSelectThisID.notNull()) + { + setSelectionByID(mSelectThisID, false); + } +} + /************************************************************************/ /* Recent Inventory Panel related class */ diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 7d805f6862..787cacba43 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -30,6 +30,7 @@ #include "llassetstorage.h" #include "lldarray.h" +#include "llfolderviewitem.h" #include "llfloater.h" #include "llinventory.h" #include "llinventoryfilter.h" @@ -55,6 +56,18 @@ class LLFilterEditor; class LLTabContainer; class LLInvPanelComplObserver; +class LLFolderViewModelInventory +: public LLFolderViewModel +{ + typedef LLFolderViewModel base_t; + + virtual ~LLFolderViewModelInventory() {} + + void sort(LLFolderViewFolder* folder); + void requestSort(LLFolderViewFolder* folder); +}; + + class LLInventoryPanel : public LLPanel { //-------------------------------------------------------------------- @@ -85,7 +98,6 @@ public: Optional start_folder; Optional use_label_suffix; Optional show_empty_message; - Optional show_load_status; Optional scroll; Optional accepts_drag_and_drop; @@ -98,7 +110,6 @@ public: start_folder("start_folder"), use_label_suffix("use_label_suffix", true), show_empty_message("show_empty_message", true), - show_load_status("show_load_status"), scroll("scroll"), accepts_drag_and_drop("accepts_drag_and_drop") {} @@ -182,22 +193,35 @@ public: static void openInventoryPanelAndSetSelection(BOOL auto_open, const LLUUID& obj_id); + void addItemID(const LLUUID& id, LLFolderViewItem* itemp); + void removeItemID(const LLUUID& id); + LLFolderViewItem* getItemByID(const LLUUID& id); + LLFolderViewFolder* getFolderByID(const LLUUID& id); + void setSelectionByID(const LLUUID& obj_id, BOOL take_keyboard_focus); + void updateSelection(); + + LLFolderViewModelInventory* getViewModel() { return &mViewModel; } + const LLFolderViewModelInventory* getViewModel() const { return &mViewModel; } + protected: void openStartFolderOrMyInventory(); // open the first level of inventory void onItemsCompletion(); // called when selected items are complete - LLInventoryModel* mInventory; + LLUUID mSelectThisID; + LLInventoryModel* mInventory; LLInventoryObserver* mInventoryObserver; LLInvPanelComplObserver* mCompletionObserver; BOOL mAcceptsDragAndDrop; BOOL mAllowMultiSelect; BOOL mShowItemLinkOverlays; // Shows link graphic over inventory item icons BOOL mShowEmptyMessage; - BOOL mShowLoadStatus; LLFolderView* mFolderRoot; LLScrollContainer* mScroller; + LLFolderViewModelInventory mViewModel; + + std::map mItemMap; /** * Pointer to LLInventoryFVBridgeBuilder. * @@ -218,7 +242,6 @@ public: void setSortOrder(U32 order); U32 getSortOrder() const; - void requestSort(); private: std::string mSortOrderSetting; @@ -252,4 +275,25 @@ private: LLUUID mStartFolderID; }; +class LLFolderViewModelItemInventory + : public LLFolderViewModelItemCommon +{ +public: + virtual const LLUUID& getUUID() const = 0; + virtual time_t getCreationDate() const = 0; // UTC seconds + virtual void setCreationDate(time_t creation_date_utc) = 0; + virtual PermissionMask getPermissionMask() const = 0; + virtual LLFolderType::EType getPreferredType() const = 0; + virtual void previewItem( void ) = 0; + virtual void showProperties(void) = 0; + virtual BOOL isItemInTrash( void) const { return FALSE; } // TODO: make into pure virtual. + virtual BOOL isUpToDate() const = 0; + virtual BOOL hasChildren() const = 0; + virtual LLInventoryType::EType getInventoryType() const = 0; + virtual void performAction(LLInventoryModel* model, std::string action) = 0; + virtual LLWearableType::EType getWearableType() const = 0; + virtual EInventorySortGroup getSortGroup() const; + virtual void requestSort(const LLInventorySort& sorter); +}; + #endif // LL_LLINVENTORYPANEL_H diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index c7454e85a9..fd207f098f 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -299,7 +299,7 @@ void LLLandmarksPanel::onTeleport() return; } - LLFolderViewEventListener* listenerp = current_item->getListener(); + LLFolderViewModelItem* listenerp = current_item->getListener(); if (listenerp && listenerp->getInventoryType() == LLInventoryType::IT_LANDMARK) { listenerp->openItem(); @@ -360,7 +360,7 @@ void LLLandmarksPanel::onSelectorButtonClicked() LLFolderViewItem* cur_item = mFavoritesInventoryPanel->getRootFolder()->getCurSelectedItem(); if (!cur_item) return; - LLFolderViewEventListener* listenerp = cur_item->getListener(); + LLFolderViewModelItem* listenerp = cur_item->getListener(); if (listenerp->getInventoryType() == LLInventoryType::IT_LANDMARK) { LLSD key; @@ -376,7 +376,7 @@ void LLLandmarksPanel::updateShowFolderState() if (!mLandmarksInventoryPanel->getFilter()) return; - bool show_all_folders = mLandmarksInventoryPanel->getRootFolder()->getFilterSubString().empty(); + bool show_all_folders = mLandmarksInventoryPanel->getFilterSubString().empty(); if (show_all_folders) { show_all_folders = category_has_descendents(mLandmarksInventoryPanel); @@ -466,7 +466,7 @@ LLFolderViewItem* LLLandmarksPanel::selectItemInAccordionTab(LLPlacesInventoryPa LLFolderView* root = inventory_list->getRootFolder(); - LLFolderViewItem* item = root->getItemByID(obj_id); + LLFolderViewItem* item = inventory_list->getItemByID(obj_id); if (!item) return NULL; @@ -665,20 +665,20 @@ void LLLandmarksPanel::deselectOtherThan(const LLPlacesInventoryPanel* inventory { if (inventory_list != mFavoritesInventoryPanel) { - mFavoritesInventoryPanel->getRootFolder()->clearSelection(); + mFavoritesInventoryPanel->clearSelection(); } if (inventory_list != mLandmarksInventoryPanel) { - mLandmarksInventoryPanel->getRootFolder()->clearSelection(); + mLandmarksInventoryPanel->clearSelection(); } if (inventory_list != mMyInventoryPanel) { - mMyInventoryPanel->getRootFolder()->clearSelection(); + mMyInventoryPanel->clearSelection(); } if (inventory_list != mLibraryInventoryPanel) { - mLibraryInventoryPanel->getRootFolder()->clearSelection(); + mLibraryInventoryPanel->clearSelection(); } } @@ -738,7 +738,7 @@ void LLLandmarksPanel::onActionsButtonClick() if(!cur_item) return; - LLFolderViewEventListener* listenerp = cur_item->getListener(); + LLFolderViewModelItem* listenerp = cur_item->getListener(); if(!listenerp) return; @@ -794,7 +794,7 @@ void LLLandmarksPanel::onAddAction(const LLSD& userdata) const LLFolderViewItem* item = getCurSelectedItem(); if (item && mCurrentSelectedList == mLandmarksInventoryPanel) { - LLFolderViewEventListener* folder_bridge = NULL; + LLFolderViewModelItem* folder_bridge = NULL; if (item-> getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK) { @@ -808,7 +808,7 @@ void LLLandmarksPanel::onAddAction(const LLSD& userdata) const folder_bridge = item->getListener(); } - menu_create_inventory_item(mCurrentSelectedList->getRootFolder(), + menu_create_inventory_item(mCurrentSelectedList, dynamic_cast (folder_bridge), LLSD( "category"), gInventory.findCategoryUUIDForType( LLFolderType::FT_LANDMARK)); @@ -816,7 +816,7 @@ void LLLandmarksPanel::onAddAction(const LLSD& userdata) const else { //in case My Landmarks tab is completely empty (thus cannot be determined as being selected) - menu_create_inventory_item(mLandmarksInventoryPanel->getRootFolder(), NULL, LLSD("category"), + menu_create_inventory_item(mLandmarksInventoryPanel, NULL, LLSD("category"), gInventory.findCategoryUUIDForType(LLFolderType::FT_LANDMARK)); if (mMyLandmarksAccordionTab) @@ -977,12 +977,12 @@ bool LLLandmarksPanel::isActionEnabled(const LLSD& userdata) const { if (!root_folder_view) return false; - std::set selected_uuids = root_folder_view->getSelectionList(); + std::set selected_uuids = root_folder_view->getSelectionList(); // Allow to execute the command only if it can be applied to all selected items. - for (std::set::const_iterator iter = selected_uuids.begin(); iter != selected_uuids.end(); ++iter) + for (std::set::const_iterator iter = selected_uuids.begin(); iter != selected_uuids.end(); ++iter) { - LLFolderViewItem* item = root_folder_view->getItemByID(*iter); + LLFolderViewItem* item = *iter; // If no item is found it might be a folder id. if (!item) @@ -1049,7 +1049,7 @@ bool LLLandmarksPanel::isActionEnabled(const LLSD& userdata) const { if (mCurrentSelectedList) { - std::set selection = mCurrentSelectedList->getRootFolder()->getSelectionList(); + std::set selection = mCurrentSelectedList->getRootFolder()->getSelectionList(); if (!selection.empty()) { return ( 1 == selection.size() && !LLAgentPicksInfo::getInstance()->isPickLimitReached() ); @@ -1105,27 +1105,23 @@ void LLLandmarksPanel::onMenuVisibilityChange(LLUICtrl* ctrl, const LLSD& param) { const LLUUID trash_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH); - std::set selected_uuids = root_folder_view->getSelectionList(); + std::set selected_uuids = root_folder_view->getSelectionList(); // Iterate through selected items to find out if any of these items are in Trash // or all the items are in Trash category. - for (std::set::const_iterator iter = selected_uuids.begin(); iter != selected_uuids.end(); ++iter) + for (std::set::const_iterator iter = selected_uuids.begin(); iter != selected_uuids.end(); ++iter) { - LLFolderViewItem* item = root_folder_view->getItemByID(*iter); + LLFolderViewItem* item = *iter; // If no item is found it might be a folder id. - if (!item) - { - item = root_folder_view->getFolderByID(*iter); - } if (!item) continue; - LLFolderViewEventListener* listenerp = item->getListener(); + LLFolderViewModelItem* listenerp = item->getListener(); if(!listenerp) continue; // Trash category itself should not be included because it can't be // actually restored from trash. - are_all_items_in_trash &= listenerp->isItemInTrash() && *iter != trash_id; + are_all_items_in_trash &= listenerp->isItemInTrash() && (*iter)->getListener()->getUUID() != trash_id; // If there are any selected items in Trash including the Trash category itself // we show "Restore Item" in context menu and hide other irrelevant items. @@ -1202,7 +1198,7 @@ bool LLLandmarksPanel::canItemBeModified(const std::string& command_name, LLFold if (can_be_modified) { - LLFolderViewEventListener* listenerp = item->getListener(); + LLFolderViewModelItemInventory* listenerp = item->getListener(); if ("cut" == command_name) { @@ -1263,8 +1259,9 @@ bool LLLandmarksPanel::handleDragAndDropToTrash(BOOL drop, EDragAndDropType carg LLInventoryItem* item = static_cast(cargo_data); if (item) { - LLFolderViewItem* fv_item = (mCurrentSelectedList && mCurrentSelectedList->getRootFolder()) ? - mCurrentSelectedList->getRootFolder()->getItemByID(item->getUUID()) : NULL; + LLFolderViewItem* fv_item = mCurrentSelectedList + ? mCurrentSelectedList->getItemByID(item->getUUID()) + : NULL; if (fv_item) { @@ -1392,7 +1389,7 @@ void LLLandmarksPanel::doCreatePick(LLLandmark* landmark) static void filter_list(LLPlacesInventoryPanel* inventory_list, const std::string& string) { // When search is cleared, restore the old folder state. - if (!inventory_list->getRootFolder()->getFilterSubString().empty() && string == "") + if (!inventory_list->getFilterSubString().empty() && string == "") { inventory_list->setFilterSubString(LLStringUtil::null); // Re-open folders that were open before @@ -1406,7 +1403,7 @@ static void filter_list(LLPlacesInventoryPanel* inventory_list, const std::strin } // save current folder open state if no filter currently applied - if (inventory_list->getRootFolder()->getFilterSubString().empty()) + if (inventory_list->getFilterSubString().empty()) { inventory_list->saveFolderState(); } diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index c3c62920d3..d50cd3b270 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -53,6 +53,7 @@ #include "llviewermenu.h" #include "llviewertexturelist.h" #include "llsidepanelinventory.h" +#include "llfolderview.h" const std::string FILTERS_FILENAME("filters.xml"); @@ -171,7 +172,10 @@ BOOL LLPanelMainInventory::postBuild() { LLSD recent_items = savedFilterState.get( recent_items_panel->getFilter()->getName()); - recent_items_panel->getFilter()->fromLLSD(recent_items); + LLInventoryFilter::Params p; + LLParamSDParser parser; + parser.readSD(recent_items, p); + recent_items_panel->getFilter()->fromParams(p); } } @@ -212,21 +216,22 @@ LLPanelMainInventory::~LLPanelMainInventory( void ) if (filter) { LLSD filterState; - filter->toLLSD(filterState); - filterRoot[filter->getName()] = filterState; + LLInventoryFilter::Params p; + filter->toParams(p); + if (p.validateBlock(false)) + { + LLParamSDParser().writeSD(filterState, p); + filterRoot[filter->getName()] = filterState; + } } } - LLInventoryPanel* recent_items_panel = getChild("Recent Items"); - if (recent_items_panel) - { - LLInventoryFilter* filter = recent_items_panel->getFilter(); - if (filter) - { - LLSD filterState; - filter->toLLSD(filterState); - filterRoot[filter->getName()] = filterState; - } + LLInventoryFilter* filter = getChild("Recent Items")->getFilter(); + if (filter) + { + LLSD filterState; + filter->toLLSD(filterState); + filterRoot[filter->getName()] = filterState; } std::ostringstream filterSaveName; @@ -306,7 +311,7 @@ void LLPanelMainInventory::newWindow() void LLPanelMainInventory::doCreate(const LLSD& userdata) { - menu_create_inventory_item(getPanel()->getRootFolder(), NULL, userdata); + menu_create_inventory_item(getPanel(), NULL, userdata); } void LLPanelMainInventory::resetFilters() @@ -417,7 +422,7 @@ void LLPanelMainInventory::onFilterEdit(const std::string& search_string ) } // save current folder open state if no filter currently applied - if (!mActivePanel->getRootFolder()->isFilterModified()) + if (!mActivePanel->getFilter()->isNotDefault()) { mSavedFolderState->setApply(FALSE); mActivePanel->getRootFolder()->applyFunctorRecursively(*mSavedFolderState); @@ -1110,15 +1115,15 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) if (root) { can_delete = TRUE; - std::set selection_set = root->getSelectionList(); + std::set selection_set = root->getSelectionList(); if (selection_set.empty()) return FALSE; - for (std::set::iterator iter = selection_set.begin(); + for (std::set::iterator iter = selection_set.begin(); iter != selection_set.end(); ++iter) { const LLUUID &item_id = (*iter); - LLFolderViewItem *item = root->getItemByID(item_id); - const LLFolderViewEventListener *listener = item->getListener(); + LLFolderViewItem *item = *iter; + const LLFolderViewModelItemInventory *listener = item->getListener(); llassert(listener); if (!listener) return FALSE; can_delete &= listener->isItemRemovable(); @@ -1148,7 +1153,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) if (command_name == "find_links") { LLFolderView* root = getActivePanel()->getRootFolder(); - std::set selection_set = root->getSelectionList(); + std::set selection_set = root->getSelectionList(); if (selection_set.size() != 1) return FALSE; LLFolderViewItem* current_item = root->getCurSelectedItem(); if (!current_item) return FALSE; diff --git a/indra/newview/llpanelmarketplaceinbox.cpp b/indra/newview/llpanelmarketplaceinbox.cpp index 66c9c323cb..6804342106 100644 --- a/indra/newview/llpanelmarketplaceinbox.cpp +++ b/indra/newview/llpanelmarketplaceinbox.cpp @@ -94,7 +94,7 @@ LLInventoryPanel * LLPanelMarketplaceInbox::setupInventoryPanel() mInventoryPanel->setShape(inventory_placeholder_rect); // Set the sort order newest to oldest - mInventoryPanel->setSortOrder(LLInventoryFilter::SO_DATE); + mInventoryPanel->getViewModel()->setSorter(LLInventoryFilter::SO_DATE); mInventoryPanel->getFilter()->markDefault(); // Set selection callback for proper update of inventory status buttons @@ -139,12 +139,12 @@ U32 LLPanelMarketplaceInbox::getFreshItemCount() const if (mInventoryPanel) { - const LLFolderViewFolder * inbox_folder = mInventoryPanel->getRootFolder(); + LLFolderViewFolder * inbox_folder = mInventoryPanel->getRootFolder(); if (inbox_folder) { - LLFolderViewFolder::folders_t::const_iterator folders_it = inbox_folder->getFoldersBegin(); - LLFolderViewFolder::folders_t::const_iterator folders_end = inbox_folder->getFoldersEnd(); + LLFolderViewFolder::folders_t::iterator folders_it = inbox_folder->getFoldersBegin(); + LLFolderViewFolder::folders_t::iterator folders_end = inbox_folder->getFoldersEnd(); for (; folders_it != folders_end; ++folders_it) { @@ -157,8 +157,8 @@ U32 LLPanelMarketplaceInbox::getFreshItemCount() const } } - LLFolderViewFolder::items_t::const_iterator items_it = inbox_folder->getItemsBegin(); - LLFolderViewFolder::items_t::const_iterator items_end = inbox_folder->getItemsEnd(); + LLFolderViewFolder::items_t::iterator items_it = inbox_folder->getItemsBegin(); + LLFolderViewFolder::items_t::iterator items_end = inbox_folder->getItemsEnd(); for (; items_it != items_end; ++items_it) { diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index 678e4f2843..1d079adfd3 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -29,6 +29,7 @@ #include "llpanelmarketplaceinboxinventory.h" #include "llfolderview.h" +#include "llfolderviewitem.h" #include "llfoldervieweventlistener.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" @@ -253,9 +254,9 @@ LLInboxFolderViewItem::LLInboxFolderViewItem(const Params& p) #endif } -BOOL LLInboxFolderViewItem::addToFolder(LLFolderViewFolder* folder, LLFolderView* root) +BOOL LLInboxFolderViewItem::addToFolder(LLFolderViewFolder* folder) { - BOOL retval = LLFolderViewItem::addToFolder(folder, root); + BOOL retval = LLFolderViewItem::addToFolder(folder); #if SUPPORTING_FRESH_ITEM_COUNT // Compute freshness if our parent is the root folder for the inbox diff --git a/indra/newview/llpanelmarketplaceinboxinventory.h b/indra/newview/llpanelmarketplaceinboxinventory.h index d6b827ee3e..209f3a4098 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.h +++ b/indra/newview/llpanelmarketplaceinboxinventory.h @@ -81,8 +81,6 @@ public: bool isFresh() const { return mFresh; } protected: - void setCreationDate(time_t creation_date_utc); - bool mFresh; }; @@ -102,7 +100,7 @@ public: LLInboxFolderViewItem(const Params& p); - BOOL addToFolder(LLFolderViewFolder* folder, LLFolderView* root); + BOOL addToFolder(LLFolderViewFolder* folder); BOOL handleDoubleClick(S32 x, S32 y, MASK mask); void draw(); diff --git a/indra/newview/llpanelmarketplaceoutboxinventory.cpp b/indra/newview/llpanelmarketplaceoutboxinventory.cpp index ff62cb23db..b5c7c4ca88 100644 --- a/indra/newview/llpanelmarketplaceoutboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceoutboxinventory.cpp @@ -28,7 +28,7 @@ #include "llpanelmarketplaceoutboxinventory.h" -#include "llfolderview.h" +#include "llfolderviewitem.h" #include "llfoldervieweventlistener.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 1efd1c3d9c..2789fe0082 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -71,7 +71,7 @@ /// Class LLTaskInvFVBridge ///---------------------------------------------------------------------------- -class LLTaskInvFVBridge : public LLFolderViewEventListener +class LLTaskInvFVBridge : public LLFolderViewModelItemInventory { protected: LLUUID mUUID; @@ -102,7 +102,7 @@ public: S32 getPrice(); static bool commitBuyItem(const LLSD& notification, const LLSD& response); - // LLFolderViewEventListener functionality + // LLFolderViewModelItemInventory functionality virtual const std::string& getName() const; virtual const std::string& getDisplayName() const; virtual PermissionMask getPermissionMask() const { return PERM_NONE; } @@ -120,9 +120,9 @@ public: virtual BOOL isItemMovable() const; virtual BOOL isItemRemovable() const; virtual BOOL removeItem(); - virtual void removeBatch(LLDynamicArray& batch); - virtual void move(LLFolderViewEventListener* parent_listener); - virtual BOOL isItemCopyable() const; + virtual void removeBatch(std::vector& batch); + virtual void move(LLFolderViewModelItem* parent_listener); + virtual BOOL isItemCopyable() const; virtual BOOL copyToClipboard() const; virtual void cutToClipboard(); virtual BOOL isClipboardPasteable() const; @@ -467,7 +467,7 @@ BOOL LLTaskInvFVBridge::removeItem() return FALSE; } -void LLTaskInvFVBridge::removeBatch(LLDynamicArray& batch) +void LLTaskInvFVBridge::removeBatch(LLDynamicArray& batch) { if (!mPanel) { @@ -507,7 +507,7 @@ void LLTaskInvFVBridge::removeBatch(LLDynamicArray& } } -void LLTaskInvFVBridge::move(LLFolderViewEventListener* parent_listener) +void LLTaskInvFVBridge::move(LLFolderViewModelItem* parent_listener) { } @@ -1547,7 +1547,8 @@ void LLPanelObjectInventory::reset() p.folder_indentation = -14; // subtract space normally reserved for folder expanders mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" - mFolders->getFilter()->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); + RN: make this happen by manipulating filter object directly + //mFolders->getFilter()->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); if (hasFocus()) @@ -1607,7 +1608,7 @@ void LLPanelObjectInventory::updateInventory() // << " panel UUID: " << panel->mTaskUUID << "\n" // << " task UUID: " << object->mID << llendl; // We're still interested in this task's inventory. - std::set selected_items; + std::set selected_items; BOOL inventory_has_focus = FALSE; if (mHaveInventory) { @@ -1645,11 +1646,11 @@ void LLPanelObjectInventory::updateInventory() } // restore previous selection - std::set::iterator selection_it; + std::set::iterator selection_it; BOOL first_item = TRUE; for (selection_it = selected_items.begin(); selection_it != selected_items.end(); ++selection_it) { - LLFolderViewItem* selected_item = mFolders->getItemByID(*selection_it); + LLFolderViewItem* selected_item = (*selection_it); if (selected_item) { //HACK: "set" first item then "change" each other one to get keyboard focus right @@ -1751,7 +1752,8 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li params.tool_tip = params.name; view = LLUICtrlFactory::create (params); } - view->addToFolder(folder, mFolders); + view->addToFolder(folder); + addItemID(view->getListener()->getUUID(), view); } } diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp index 35e2e96bab..4abc7fea0e 100644 --- a/indra/newview/llpaneloutfitedit.cpp +++ b/indra/newview/llpaneloutfitedit.cpp @@ -270,7 +270,7 @@ private: if (inventory_panel->getVisible()) { - inventory_panel->setSortOrder(sort_order); + inventory_panel->getViewModel()->setSorter(sort_order); } else { @@ -738,7 +738,7 @@ void LLPanelOutfitEdit::onSearchEdit(const std::string& string) } // save current folder open state if no filter currently applied - if (mInventoryItemsPanel->getRootFolder()->getFilterSubString().empty()) + if (mInventoryItemsPanel->getFilterSubString().empty()) { mSavedFolderState->setApply(FALSE); mInventoryItemsPanel->getRootFolder()->applyFunctorRecursively(*mSavedFolderState); @@ -885,13 +885,13 @@ LLPanelOutfitEdit::selection_info_t LLPanelOutfitEdit::getAddMorePanelSelectionT { if (mInventoryItemsPanel != NULL && mInventoryItemsPanel->getVisible()) { - std::set selected_uuids = mInventoryItemsPanel->getRootFolder()->getSelectionList(); + std::set selected_items = mInventoryItemsPanel->getRootFolder()->getSelectionList(); - result.second = selected_uuids.size(); + result.second = selected_items.size(); if (result.second == 1) { - result.first = getWearableTypeByItemUUID(*(selected_uuids.begin())); + result.first = getWearableTypeByItemUUID((*selected_items.begin())->getListener()->getUUID()); } } else if (mWearableItemsList != NULL && mWearableItemsList->getVisible()) @@ -1310,7 +1310,7 @@ void LLPanelOutfitEdit::getCurrentItemUUID(LLUUID& selected_id) LLFolderViewItem* curr_item = mInventoryItemsPanel->getRootFolder()->getCurSelectedItem(); if (!curr_item) return; - LLFolderViewEventListener* listenerp = curr_item->getListener(); + LLFolderViewModelItemInventory* listenerp = curr_item->getListener(); if (!listenerp) return; selected_id = listenerp->getUUID(); @@ -1327,9 +1327,13 @@ void LLPanelOutfitEdit::getSelectedItemsUUID(uuid_vec_t& uuid_list) void (uuid_vec_t::* tmp)(LLUUID const &) = &uuid_vec_t::push_back; if (mInventoryItemsPanel->getVisible()) { - std::set item_set = mInventoryItemsPanel->getRootFolder()->getSelectionList(); - - std::for_each(item_set.begin(), item_set.end(), boost::bind( tmp, &uuid_list, _1)); + std::set item_set = mInventoryItemsPanel->getRootFolder()->getSelectionList(); + for (std::set::iterator it = item_set.begin(), end_it = item_set.end(); + it != end_it; + ++it) + { + uuid_list.push_back((*it)->getListener()->getUUID()); + } } else if (mWearablesListViewPanel->getVisible()) { @@ -1374,13 +1378,13 @@ void LLPanelOutfitEdit::saveListSelection() { if(mWearablesListViewPanel->getVisible()) { - std::set selected_ids = mInventoryItemsPanel->getRootFolder()->getSelectionList(); + std::set selected_ids = mInventoryItemsPanel->getRootFolder()->getSelectionList(); if(!selected_ids.size()) return; - for (std::set::const_iterator item_id = selected_ids.begin(); item_id != selected_ids.end(); ++item_id) + for (std::set::const_iterator item_id = selected_ids.begin(); item_id != selected_ids.end(); ++item_id) { - mWearableItemsList->selectItemByUUID(*item_id, true); + mWearableItemsList->selectItemByUUID((*item_id)->getListener()->getUUID(), true); } mWearableItemsList->scrollToShowFirstSelectedItem(); } @@ -1398,7 +1402,7 @@ void LLPanelOutfitEdit::saveListSelection() for(std::vector::const_iterator item_id = selected_ids.begin(); item_id != selected_ids.end(); ++item_id) { - LLFolderViewItem* item = root->getItemByID(*item_id); + LLFolderViewItem* item = mInventoryItemsPanel->getItemByID(*item_id); if (!item) continue; LLFolderViewFolder* parent = item->getParentFolder(); diff --git a/indra/newview/llplacesinventorybridge.cpp b/indra/newview/llplacesinventorybridge.cpp index fe4cc0f55f..97c5d531d2 100644 --- a/indra/newview/llplacesinventorybridge.cpp +++ b/indra/newview/llplacesinventorybridge.cpp @@ -85,34 +85,33 @@ void LLPlacesLandmarkBridge::buildContextMenu(LLMenuGL& menu, U32 flags) void LLPlacesFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags) { + std::vector items; + std::vector disabled_items; + + LLInventoryPanel* inv_panel = mInventoryPanel.get(); + bool is_open = false; + if (inv_panel) { - std::vector items; - std::vector disabled_items; + LLFolderViewFolder* folder = dynamic_cast(inv_panel->getItemByID(mUUID)); + is_open = (NULL != folder) && folder->isOpen(); + } - LLInventoryPanel* inv_panel = mInventoryPanel.get(); - bool is_open = false; - if (inv_panel) - { - LLFolderViewFolder* folder = dynamic_cast(inv_panel->getRootFolder()->getItemByID(mUUID)); - is_open = (NULL != folder) && folder->isOpen(); - } + // collect all items' names + fill_items_with_menu_items(items, menu); - // collect all items' names - fill_items_with_menu_items(items, menu); + // remove expand or collapse menu item depend on folder state + std::string collapse_expand_item_to_hide(is_open ? "expand" : "collapse"); + std::vector::iterator it = std::find(items.begin(), items.end(), collapse_expand_item_to_hide); + if (it != items.end()) items.erase(it); - // remove expand or collapse menu item depend on folder state - std::string collapse_expand_item_to_hide(is_open ? "expand" : "collapse"); - std::vector::iterator it = std::find(items.begin(), items.end(), collapse_expand_item_to_hide); - if (it != items.end()) items.erase(it); - // Disabled items are processed via LLLandmarksPanel::isActionEnabled() - // they should be synchronized with Places/My Landmarks/Gear menu. See EXT-1601 + // Disabled items are processed via LLLandmarksPanel::isActionEnabled() + // they should be synchronized with Places/My Landmarks/Gear menu. See EXT-1601 - // repeat parent functionality - sSelf = getHandle(); // necessary for "New Folder" functionality + // repeat parent functionality + sSelf = getHandle(); // necessary for "New Folder" functionality - hide_context_entries(menu, items, disabled_items); - } + hide_context_entries(menu, items, disabled_items); } //virtual @@ -140,7 +139,7 @@ LLFolderViewFolder* LLPlacesFolderBridge::getFolder() LLInventoryPanel* inv_panel = mInventoryPanel.get(); if (inv_panel) { - folder = dynamic_cast(inv_panel->getRootFolder()->getItemByID(mUUID)); + folder = dynamic_cast(inv_panel->getItemByID(mUUID)); } return folder; diff --git a/indra/newview/llplacesinventorypanel.cpp b/indra/newview/llplacesinventorypanel.cpp index f7823f4fe8..1de26660bc 100644 --- a/indra/newview/llplacesinventorypanel.cpp +++ b/indra/newview/llplacesinventorypanel.cpp @@ -31,6 +31,7 @@ #include "llplacesinventorypanel.h" #include "llfoldervieweventlistener.h" +#include "llfolderview.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" #include "llpanellandmarks.h" @@ -91,7 +92,7 @@ void LLPlacesInventoryPanel::buildFolderView(const LLInventoryPanel::Params& par p.parent_panel = this; p.allow_multiselect = mAllowMultiSelect; p.use_ellipses = true; // truncate inventory item text so remove horizontal scroller - mFolderRoot = (LLFolderView*)LLUICtrlFactory::create(p); + mFolderRoot = LLUICtrlFactory::create(p); } diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index 853656905c..f069da5869 100644 --- a/indra/newview/llsidepanelappearance.cpp +++ b/indra/newview/llsidepanelappearance.cpp @@ -267,7 +267,7 @@ void LLSidepanelAppearance::onOpenOutfitButtonClicked() if (inventory_panel) { LLFolderView* root = inventory_panel->getRootFolder(); - LLFolderViewItem *outfit_folder = root->getItemByID(outfit_link->getLinkedUUID()); + LLFolderViewItem *outfit_folder = inventory_panel->getItemByID(outfit_link->getLinkedUUID()); if (outfit_folder) { outfit_folder->setOpen(!outfit_folder->isOpen()); diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp index c8b67cc9ec..a86523d32d 100644 --- a/indra/newview/llsidepanelinventory.cpp +++ b/indra/newview/llsidepanelinventory.cpp @@ -36,6 +36,7 @@ #include "llfirstuse.h" #include "llfloatersidepanelcontainer.h" #include "llfoldertype.h" +#include "llfolderview.h" #include "llhttpclient.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" @@ -653,7 +654,7 @@ U32 LLSidepanelInventory::getSelectedCount() { int count = 0; - std::set selection_list = mPanelMainInventory->getActivePanel()->getRootFolder()->getSelectionList(); + std::set selection_list = mPanelMainInventory->getActivePanel()->getRootFolder()->getSelectionList(); count += selection_list.size(); if ((count == 0) && mInboxEnabled && (mInventoryPanelInbox != NULL)) @@ -704,9 +705,9 @@ void LLSidepanelInventory::clearSelections(bool clearMain, bool clearInbox) updateVerbs(); } -std::set LLSidepanelInventory::getInboxSelectionList() +std::set LLSidepanelInventory::getInboxSelectionList() { - std::set inventory_selected_uuids; + std::set inventory_selected_uuids; if (mInboxEnabled && (mInventoryPanelInbox != NULL)) { diff --git a/indra/newview/llsidepanelinventory.h b/indra/newview/llsidepanelinventory.h index a33607f50d..6aa349f0f3 100644 --- a/indra/newview/llsidepanelinventory.h +++ b/indra/newview/llsidepanelinventory.h @@ -63,6 +63,7 @@ public: BOOL isMainInventoryPanelActive() const; void clearSelections(bool clearMain, bool clearInbox); + std::set getInboxSelectionList(); std::set getInboxSelectionList(); void showItemInfoPanel(); diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 19a944e88e..92970003ef 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -345,7 +345,7 @@ BOOL LLFloaterTexturePicker::handleKeyHere(KEY key, MASK mask) { if (!root_folder->getCurSelectedItem()) { - LLFolderViewItem* itemp = root_folder->getItemByID(gInventory.getRootFolderID()); + LLFolderViewItem* itemp = mInventoryPanel->getItemByID(gInventory.getRootFolderID()); if (itemp) { root_folder->setSelection(itemp, FALSE, FALSE); @@ -848,7 +848,7 @@ void LLFloaterTexturePicker::onFilterEdit(const std::string& search_string ) else if (mInventoryPanel->getFilterSubString().empty()) { // first letter in search term, save existing folder open state - if (!mInventoryPanel->getRootFolder()->isFilterModified()) + if (!mInventoryPanel->getFilter()->isNotDefault()) { mSavedFolderState.setApply(FALSE); mInventoryPanel->getRootFolder()->applyFunctorRecursively(mSavedFolderState); diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp index 45ca23cdfe..d827b2b8aa 100644 --- a/indra/newview/llviewerinventory.cpp +++ b/indra/newview/llviewerinventory.cpp @@ -1308,7 +1308,7 @@ const std::string NEW_NOTECARD_NAME = "New Note"; // *TODO:Translate? (probably const std::string NEW_GESTURE_NAME = "New Gesture"; // *TODO:Translate? (probably not) // ! REFACTOR ! Really need to refactor this so that it's not a bunch of if-then statements... -void menu_create_inventory_item(LLFolderView* root, LLFolderBridge *bridge, const LLSD& userdata, const LLUUID& default_parent_uuid) +void menu_create_inventory_item(LLInventoryPanel* panel, LLFolderBridge *bridge, const LLSD& userdata, const LLUUID& default_parent_uuid) { std::string type_name = userdata.asString(); @@ -1332,7 +1332,7 @@ void menu_create_inventory_item(LLFolderView* root, LLFolderBridge *bridge, cons LLUUID category = gInventory.createNewCategory(parent_id, preferred_type, LLStringUtil::null); gInventory.notifyObservers(); - root->setSelectionByID(category, TRUE); + panel->setSelectionByID(category, TRUE); } else if ("lsl" == type_name) { @@ -1375,7 +1375,7 @@ void menu_create_inventory_item(LLFolderView* root, LLFolderBridge *bridge, cons llwarns << "Can't create unrecognized type " << type_name << llendl; } } - root->setNeedsAutoRename(TRUE); + panel->getRoot()->->setNeedsAutoRename(TRUE); } LLAssetType::EType LLViewerInventoryItem::getType() const @@ -1785,12 +1785,6 @@ void LLViewerInventoryItem::getSLURL() LLFavoritesOrderStorage::instance().getSLURL(mAssetUUID); } -const LLPermissions& LLViewerInventoryItem::getPermissions() const -{ - // Use the actual permissions of the symlink, not its parent. - return LLInventoryItem::getPermissions(); -} - const LLUUID& LLViewerInventoryItem::getCreatorUUID() const { if (const LLViewerInventoryItem *linked_item = getLinkedItem()) @@ -1861,17 +1855,6 @@ LLWearableType::EType LLViewerInventoryItem::getWearableType() const return LLWearableType::EType(getFlags() & LLInventoryItemFlags::II_FLAGS_WEARABLES_MASK); } - -time_t LLViewerInventoryItem::getCreationDate() const -{ - return LLInventoryItem::getCreationDate(); -} - -U32 LLViewerInventoryItem::getCRC32() const -{ - return LLInventoryItem::getCRC32(); -} - // *TODO: mantipov: should be removed with LMSortPrefix patch in llinventorymodel.cpp, EXT-3985 static char getSeparator() { return '@'; } BOOL LLViewerInventoryItem::extractSortFieldAndDisplayName(const std::string& name, S32* sortField, std::string* displayName) diff --git a/indra/newview/llviewerinventory.h b/indra/newview/llviewerinventory.h index 7822ef4da6..d66362d544 100644 --- a/indra/newview/llviewerinventory.h +++ b/indra/newview/llviewerinventory.h @@ -34,7 +34,7 @@ #include // boost::signals2::trackable -class LLFolderView; +class LLInventoryPanel; class LLFolderBridge; class LLViewerInventoryCategory; @@ -63,7 +63,6 @@ public: virtual S32 getSortField() const; virtual void setSortField(S32 sortField); virtual void getSLURL(); //Caches SLURL for landmark. //*TODO: Find a better way to do it and remove this method from here. - virtual const LLPermissions& getPermissions() const; virtual const bool getIsFullPerm() const; // 'fullperm' in the popular sense: modify-ok & copy-ok & transfer-ok, no special god rules applied virtual const LLUUID& getCreatorUUID() const; virtual const std::string& getDescription() const; @@ -72,8 +71,11 @@ public: virtual bool isWearableType() const; virtual LLWearableType::EType getWearableType() const; virtual U32 getFlags() const; - virtual time_t getCreationDate() const; - virtual U32 getCRC32() const; // really more of a checksum. + + using LLInventoryItem::getPermissions; + using LLInventoryItem::getCreationDate; + using LLInventoryItem::setCreationDate; + using LLInventoryItem::getCRC32; static BOOL extractSortFieldAndDisplayName(const std::string& name, S32* sortField, std::string* displayName); @@ -372,7 +374,7 @@ void copy_inventory_from_notecard(const LLUUID& destination_id, U32 callback_id = 0); -void menu_create_inventory_item(LLFolderView* root, +void menu_create_inventory_item(LLInventoryPanel* root, LLFolderBridge* bridge, const LLSD& userdata, const LLUUID& default_parent_uuid = LLUUID::null); diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index cefd9ef91d..23de64ec13 100755 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -726,7 +726,7 @@ static void highlight_inventory_objects_in_panel(const std::vector& item LLFolderView* fv = inventory_panel->getRootFolder(); if (fv) { - LLFolderViewItem* fv_item = fv->getItemByID(item_id); + LLFolderViewItem* fv_item = inventory_panel->getItemByID(item_id); if (fv_item) { LLFolderViewItem* fv_folder = fv_item->getParentFolder(); @@ -814,7 +814,13 @@ private: mSelectedItems.clear(); if (LLInventoryPanel::getActiveInventoryPanel()) { - mSelectedItems = LLInventoryPanel::getActiveInventoryPanel()->getRootFolder()->getSelectionList(); + std::set selection = LLInventoryPanel::getActiveInventoryPanel()->getRootFolder()->getSelectionList(); + for (std::set::iterator it = selection.begin(), end_it = selection.end(); + it != end_it; + ++it) + { + mSelectedItems.insert((*it)->getListener()->getUUID()); + } } mSelectedItems.erase(mMoveIntoFolderID); } @@ -849,7 +855,15 @@ private: } // get selected items (without destination folder) - selected_items_t selected_items = active_panel->getRootFolder()->getSelectionList(); + selected_items_t selected_items; + + std::set selection = LLInventoryPanel::getActiveInventoryPanel()->getRootFolder()->getSelectionList(); + for (std::set::iterator it = selection.begin(), end_it = selection.end(); + it != end_it; + ++it) + { + selected_items.insert((*it)->getListener()->getUUID()); + } selected_items.erase(mMoveIntoFolderID); // compare stored & current sets of selected items -- cgit v1.3 From 379eec8841212665881569c69804fafd96152387 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 15 Jun 2012 13:35:39 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose continuing fixing build errors renamed llfoldervieweventlistener.h to llfolderviewmodel.h --- indra/newview/CMakeLists.txt | 2 +- indra/newview/llavataractions.cpp | 4 +- indra/newview/llfloateroutbox.cpp | 2 +- indra/newview/llfolderview.cpp | 38 +-- indra/newview/llfolderview.h | 5 +- indra/newview/llfoldervieweventlistener.h | 294 ------------------- indra/newview/llfolderviewitem.cpp | 290 ++++++++----------- indra/newview/llfolderviewitem.h | 67 ++--- indra/newview/llfolderviewmodel.h | 313 +++++++++++++++++++++ indra/newview/llinventorybridge.cpp | 104 +++---- indra/newview/llinventorybridge.h | 30 +- indra/newview/llinventoryfilter.cpp | 31 +- indra/newview/llinventoryfilter.h | 33 +-- indra/newview/llinventoryfunctions.cpp | 2 +- indra/newview/llinventorypanel.cpp | 50 ++-- indra/newview/llinventorypanel.h | 86 +++--- indra/newview/llpanellandmarks.cpp | 40 +-- indra/newview/llpanelmaininventory.cpp | 22 +- indra/newview/llpanelmarketplaceinbox.cpp | 2 +- .../newview/llpanelmarketplaceoutboxinventory.cpp | 2 +- indra/newview/llpanelobjectinventory.cpp | 8 +- indra/newview/llpaneloutfitedit.cpp | 8 +- indra/newview/llplacesinventorypanel.cpp | 4 +- indra/newview/llsidepanelappearance.cpp | 2 +- indra/newview/llsidepanelinventory.cpp | 4 +- indra/newview/lltexturectrl.cpp | 4 +- 26 files changed, 688 insertions(+), 759 deletions(-) delete mode 100644 indra/newview/llfoldervieweventlistener.h create mode 100644 indra/newview/llfolderviewmodel.h (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 785bf4b868..4f447fd35b 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -808,7 +808,7 @@ set(viewer_HEADER_FILES llfloaterwindowsize.h llfloaterworldmap.h llfolderview.h - llfoldervieweventlistener.h + llfolderviewmodel.h llfolderviewitem.h llfollowcam.h llfriendcard.h diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index decfef2ae6..68dc7681cc 100755 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -778,7 +778,7 @@ bool LLAvatarActions::canShareSelectedItems(LLInventoryPanel* inv_panel /* = NUL const std::set::const_iterator it_end = inventory_selected.end(); for (; it != it_end; ++it) { - LLViewerInventoryCategory* inv_cat = gInventory.getCategory((*it)->getListener()->getUUID()); + LLViewerInventoryCategory* inv_cat = gInventory.getCategory((*it)->getItemViewModel()->getUUID()); // any category can be offered. if (inv_cat) { @@ -788,7 +788,7 @@ bool LLAvatarActions::canShareSelectedItems(LLInventoryPanel* inv_panel /* = NUL // check if inventory item can be given LLFolderViewItem* item = *it; if (!item) return false; - LLInvFVBridge* bridge = dynamic_cast(item->getListener()); + LLInvFVBridge* bridge = dynamic_cast(item->getViewModelItem()); if (bridge && bridge->canShare()) { continue; diff --git a/indra/newview/llfloateroutbox.cpp b/indra/newview/llfloateroutbox.cpp index ba0f51b467..04a55b261c 100644 --- a/indra/newview/llfloateroutbox.cpp +++ b/indra/newview/llfloateroutbox.cpp @@ -251,7 +251,7 @@ void LLFloaterOutbox::setupOutbox(const LLUUID& outboxId) // Set the sort order newest to oldest - mOutboxInventoryPanel->getViewModel()->setSorter(LLInventoryFilter::SO_FOLDERS_BY_NAME); + mOutboxInventoryPanel->getFolderViewModel()->setSorter(LLInventoryFilter::SO_FOLDERS_BY_NAME); mOutboxInventoryPanel->getFilter()->markDefault(); fetchOutboxContents(); diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 1f48ef98f6..918e68e444 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -304,7 +304,7 @@ BOOL LLFolderView::canFocusChildren() const BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) { // enforce sort order of My Inventory followed by Library - if (folder->getListener()->getUUID() == gInventory.getLibraryRootFolderID()) + if (folder->getViewModelItem()->getUUID() == gInventory.getLibraryRootFolderID()) { mFolders.push_back(folder); } @@ -366,7 +366,7 @@ S32 LLFolderView::arrange( S32* unused_width, S32* unused_height, S32 filter_gen static LLFastTimer::DeclareTimer FTM_FILTER("Filter Inventory"); -void LLFolderView::filter( LLInventoryFilter& filter ) +void LLFolderView::filter( LLFolderViewFilter& filter ) { LLFastTimer t2(FTM_FILTER); filter.setFilterCount(llclamp(gSavedSettings.getS32("FilterItemsPerFrame"), 1, 5000)); @@ -667,7 +667,7 @@ BOOL LLFolderView::startDrag(LLToolDragAndDrop::ESource source) { EDragAndDropType type = DAD_NONE; LLUUID id = LLUUID::null; - can_drag = can_drag && (*item_it)->getListener()->startDrag(&type, &id); + can_drag = can_drag && (*item_it)->getViewModelItem()->startDrag(&type, &id); types.push_back(type); cargo_ids.push_back(id); @@ -947,7 +947,7 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL for(S32 i = 0; i < count; ++i) { - listener = items[i]->getListener(); + listener = items[i]->getViewModelItem(); if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) { listeners.put(listener); @@ -984,7 +984,7 @@ void LLFolderView::openSelectedItems( void ) // IT_{OBJECT,ATTACHMENT} creates LLProperties // floaters; others create LLPreviews. Put // each one in the right type of container. - LLFolderViewModelItemInventory* listener = (*item_it)->getListener(); + LLFolderViewModelItemInventory* listener = (*item_it)->getViewModelItem(); bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); if (is_prop) LLFloater::setFloaterHost(multi_propertiesp); @@ -1010,7 +1010,7 @@ void LLFolderView::propertiesSelectedItems( void ) { LLFolderViewItem* folder_item = mSelectedItems.front(); if(!folder_item) return; - folder_item->getListener()->showProperties(); + folder_item->getViewModelItem()->showProperties(); } else { @@ -1021,7 +1021,7 @@ void LLFolderView::propertiesSelectedItems( void ) selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { - (*item_it)->getListener()->showProperties(); + (*item_it)->getViewModelItem()->showProperties(); } LLFloater::setFloaterHost(NULL); @@ -1124,7 +1124,7 @@ BOOL LLFolderView::canCopy() const for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { const LLFolderViewItem* item = *selected_it; - if (!item->getListener()->isItemCopyable()) + if (!item->getViewModelItem()->isItemCopyable()) { return FALSE; } @@ -1144,7 +1144,7 @@ void LLFolderView::copy() selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { - listener = (*item_it)->getListener(); + listener = (*item_it)->getViewModelItem(); if(listener) { listener->copyToClipboard(); @@ -1164,7 +1164,7 @@ BOOL LLFolderView::canCut() const for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { const LLFolderViewItem* item = *selected_it; - const LLFolderViewModelItemInventory* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); if (!listener || !listener->isItemRemovable()) { @@ -1185,7 +1185,7 @@ void LLFolderView::cut() selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { - listener = (*item_it)->getListener(); + listener = (*item_it)->getViewModelItem(); if(listener) { listener->cutToClipboard(); @@ -1210,11 +1210,11 @@ BOOL LLFolderView::canPaste() const { // *TODO: only check folders and parent folders of items const LLFolderViewItem* item = (*item_it); - const LLFolderViewModelItemInventory* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); if(!listener || !listener->isClipboardPasteable()) { const LLFolderViewFolder* folderp = item->getParentFolder(); - listener = folderp->getListener(); + listener = folderp->getViewModelItem(); if (!listener || !listener->isClipboardPasteable()) { return FALSE; @@ -1238,7 +1238,7 @@ void LLFolderView::paste() for (selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { LLFolderViewItem* item = *selected_it; - LLFolderViewModelItemInventory* listener = item->getListener(); + LLFolderViewModelItemInventory* listener = item->getViewModelItem(); if (listener->getInventoryType() != LLInventoryType::IT_CATEGORY) { item = item->getParentFolder(); @@ -1271,8 +1271,8 @@ void LLFolderView::startRenamingSelectedItem( void ) { item = mSelectedItems.front(); } - if(getVisible() && getEnabled() && (count == 1) && item && item->getListener() && - item->getListener()->isItemRenameable()) + if(getVisible() && getEnabled() && (count == 1) && item && item->getViewModelItem() && + item->getViewModelItem()->isItemRenameable()) { mRenameItem = item; @@ -1581,7 +1581,7 @@ BOOL LLFolderView::canDoDelete() const for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { - if (!(*item_it)->getListener()->isItemRemovable()) + if (!(*item_it)->getViewModelItem()->isItemRemovable()) { return FALSE; } @@ -1766,7 +1766,7 @@ BOOL LLFolderView::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, // when drop is not handled by child, it should be handled // by the folder which is the hierarchy root. if (!handled - && getListener()->getUUID().notNull()) + && getViewModelItem()->getUUID().notNull()) { handled = LLFolderViewFolder::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg); } @@ -1930,7 +1930,7 @@ bool LLFolderView::doToSelected(LLInventoryModel* model, const LLSD& userdata) { LLFolderViewItem* folder_item = *set_iter; if(!folder_item) continue; - LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getListener(); + LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getViewModelItem(); if(!bridge) continue; bridge->performAction(model, action); } diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 37005f080f..9b8a629387 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -111,7 +111,7 @@ public: virtual LLFolderView* getRoot() { return this; } - LLFolderViewModelInterface* getViewModel() { return mViewModel; } + LLFolderViewModelInterface* getFolderViewModel() { return mViewModel; } void setFilterPermMask(PermissionMask filter_perm_mask); @@ -272,8 +272,6 @@ protected: void onItemsRemovalConfirmation(const LLSD& notification, const LLSD& response); - LLInventorySort& getSortFunction() { return mSortFunction; } - protected: LLHandle mPopupMenuHandle; @@ -318,7 +316,6 @@ protected: LLPanel* mParentPanel; - LLInventorySort mSortFunction; LLFolderViewModelInterface* mViewModel; /** diff --git a/indra/newview/llfoldervieweventlistener.h b/indra/newview/llfoldervieweventlistener.h deleted file mode 100644 index 76e051d12f..0000000000 --- a/indra/newview/llfoldervieweventlistener.h +++ /dev/null @@ -1,294 +0,0 @@ -/** - * @file llfoldervieweventlistener.h - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ -#ifndef LLFOLDERVIEWEVENTLISTENER_H -#define LLFOLDERVIEWEVENTLISTENER_H - -#include "lldarray.h" // *TODO: convert to std::vector -#include "llfoldertype.h" -#include "llfontgl.h" // just for StyleFlags enum -#include "llinventorytype.h" -#include "llpermissionsflags.h" -#include "llpointer.h" -#include "llwearabletype.h" -#include "lltooldraganddrop.h" - -// These are grouping of inventory types. -// Order matters when sorting system folders to the top. -enum EInventorySortGroup -{ - SG_SYSTEM_FOLDER, - SG_TRASH_FOLDER, - SG_NORMAL_FOLDER, - SG_ITEM -}; - -class LLFontGL; -class LLInventoryModel; -class LLMenuGL; -class LLUIImage; -class LLUUID; -class LLFolderViewItem; -class LLFolderViewFolder; - -class LLFolderViewFilter -{ -public: - LLFolderViewFilter() {} - virtual ~LLFolderViewFilter() {} - - // +-------------------------------------------------------------------+ - // + Execution And Results - // +-------------------------------------------------------------------+ - virtual bool check(const LLFolderViewItem* item) = 0; - virtual bool check(const LLInventoryItem* item) = 0; - virtual bool checkFolder(const LLFolderViewFolder* folder) const = 0; - virtual bool checkFolder(const LLUUID& folder_id) const = 0; - - virtual void setEmptyLookupMessage(const std::string& message) = 0; - const virtual std::string& getEmptyLookupMessage() const = 0; - - // +-------------------------------------------------------------------+ - // + Status - // +-------------------------------------------------------------------+ - virtual bool isActive() const = 0; - virtual bool isModified() const = 0; - virtual bool isModifiedAndClear() = 0; - virtual void clearModified() = 0; - virtual const std::string& getName() const = 0; - virtual const std::string& getFilterText() = 0; - //RN: this is public to allow system to externally force a global refilter - virtual void setModified(EFilterBehavior behavior = FILTER_RESTART) = 0; - - // +-------------------------------------------------------------------+ - // + Count - // +-------------------------------------------------------------------+ - virtual void setFilterCount(S32 count) = 0; - virtual S32 getFilterCount() const = 0; - virtual void decrementFilterCount() = 0; - - // +-------------------------------------------------------------------+ - // + Default - // +-------------------------------------------------------------------+ - virtual BOOL isNotDefault() const = 0; - virtual void markDefault() = 0; - virtual void resetDefault() = 0; - - // +-------------------------------------------------------------------+ - // + Generation - // +-------------------------------------------------------------------+ - virtual S32 getCurrentGeneration() const = 0; - virtual S32 getFirstSuccessGeneration() const = 0; - virtual S32 getFirstRequiredGeneration() const = 0; -}; - -struct LLFolderViewModelInterface -{ - virtual void requestSortAll() = 0; - virtual void requestSort(class LLFolderViewFolder*) = 0; - - virtual void sort(class LLFolderViewFolder*) = 0; - virtual void filter(class LLFolderViewFolder*) = 0; -}; - -struct LLFolderViewModelCommon : public LLFolderViewModelInterface -{ - LLFolderViewModelCommon() - : mTargetSortVersion(0) - {} - - virtual void requestSortAll() - { - // sort everything - mTargetSortVersion++; - } - - virtual void requestSort(class LLFolderViewFolder* folder) - { - folder->requestSort(); - } - -protected: - bool needsSort(class LLFolderViewModelItem* item) - { - return item->getSortVersion() < mTargetSortVersion; - } - - S32 mTargetSortVersion; -}; - - -// This is am abstract base class that users of the folderview classes -// would use to bridge the folder view with the underlying data -class LLFolderViewModelItem -{ -public: - virtual ~LLFolderViewModelItem( void ) {}; - - virtual void update() {} //called when drawing - virtual const std::string& getName() const = 0; - virtual const std::string& getDisplayName() const = 0; - - virtual LLPointer getIcon() const = 0; - virtual LLPointer getOpenIcon() const { return getIcon(); } - - virtual LLFontGL::StyleFlags getLabelStyle() const = 0; - virtual std::string getLabelSuffix() const = 0; - - virtual void openItem( void ) = 0; - virtual void closeItem( void ) = 0; - virtual void selectItem(void) = 0; - - virtual BOOL isItemRenameable() const = 0; - virtual BOOL renameItem(const std::string& new_name) = 0; - - virtual BOOL isItemMovable( void ) const = 0; // Can be moved to another folder - virtual void move( LLFolderViewModelItem* parent_listener ) = 0; - - virtual BOOL isItemRemovable( void ) const = 0; // Can be destroyed - virtual BOOL removeItem() = 0; - virtual void removeBatch(std::vector& batch) = 0; - - virtual BOOL isItemCopyable() const = 0; - virtual BOOL copyToClipboard() const = 0; - virtual BOOL cutToClipboard() const = 0; - - virtual BOOL isClipboardPasteable() const = 0; - virtual void pasteFromClipboard() = 0; - virtual void pasteLinkFromClipboard() = 0; - - virtual void buildContextMenu(LLMenuGL& menu, U32 flags) = 0; - - // This method should be called when a drag begins. returns TRUE - // if the drag can begin, otherwise FALSE. - virtual LLToolDragAndDrop::ESource getDragSource() const = 0; - virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; - - // This method will be called to determine if a drop can be - // performed, and will set drop to TRUE if a drop is - // requested. Returns TRUE if a drop is possible/happened, - // otherwise FALSE. - virtual BOOL dragOrDrop(MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - std::string& tooltip_msg) = 0; - - virtual void requestSort() = 0; - virtual S32 getSortVersion() = 0; - virtual void setSortVersion(S32 version) = 0; -}; - -class LLFolderViewModelItemCommon : public LLFolderViewModelItem -{ -public: - LLFolderViewModelItemCommon() - : mSortVersion(-1) - {} - - void requestSort() { mSortVersion = -1; } - S32 getSortVersion() { return mSortVersion; } - void setSortVersion(S32 version) { mSortVersion = VERSION;} - -protected: - S32 mSortVersion; -}; - -template -class LLFolderViewModel : public LLFolderViewModelCommon -{ -protected: - LLFolderViewModel() {} - - typedef SORT_TYPE SortType; - typedef ITEM_TYPE ItemType; - typedef FOLDER_TYPE FolderType; - typedef FILTER_TYPE FilterType; - - virtual const SortType& getSorter() const { return mSorter; } - virtual void setSorter(const SortType& type) { mSorter = sorter; requestSortAll(); } - virtual FilterType& getFilter() const { return mFilter; } - virtual void setFilter(const FilterType& filter) { mFilter = filter; } - -public: - - struct ViewModelCompare() - { - ViewModelCompare(const SortType& sorter) - : mSorter(sorter) - {} - - int operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) - { - return mSorter(static_cast(a->getListener()), static_cast(b->getListener())); - } - - int operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) - { - return mSorter(static_cast(a->getListener()), static_cast(b->getListener())); - } - - const SortType& mSorter; - } - - void sort(LLFolderViewFolder* folder) - { - if (needsSort(folder)) - { - std::sort(folder->getFoldersBegin(), folder->getFoldersEnd(), ViewModelCompare(getSorter())); - std::sort(folder->getItemsBegin(), folder->getItemsEnd(), ViewModelCompare(getSorter())); - folder->getListener()->setSortVersion(mTargetSortVersion); - folder->requestArrange(); - } - } - - void filter(LLFolderViewFolder* folder) - { - FilterType& filter = getFilter(); - for (std::list::iterator it = folder->getItemsBegin(), end_it = folder->getItemsEnd(); - it != end_it; - ++it) - { - LLFolderViewItem* child_item = *it; - child_item->setFiltered(filter(static_cast(child_item->getListener())), filter.getCurrentGeneration()) - } - - for (std::list::iterator it = folder->getFoldersBegin(), end_it = folder->getFoldersEnd(); - it != end_it; - ++it) - { - LLFolderViewItem* child_folder = *it; - child_folder->setFiltered(filter(static_cast(child_folder->getListener())), filter.getCurrentGeneration()) - } - } - -protected: - SortType mSorter; - FilterType mFilter; -}; - - - - - -#endif diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 13b721fa23..0a3c03e868 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -30,10 +30,9 @@ // viewer includes #include "llfolderview.h" // Items depend extensively on LLFolderViews #include "llfolderview.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llviewerfoldertype.h" #include "llinventorybridge.h" // for LLItemBridge in LLInventorySort::operator() -#include "llinventoryfilter.h" #include "llinventoryfunctions.h" #include "llinventorymodelbackgroundfetch.h" #include "llpanel.h" @@ -120,7 +119,8 @@ LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) mItemHeight(p.item_height), mPassedFilter(FALSE), mLastFilterGeneration(-1), - mStringMatchOffset(std::string::npos), + //TODO RN: create interface for string highlighting + //mStringMatchOffset(std::string::npos), mControlLabelRotation(0.f), mDragAndDropTarget(FALSE), mLabel(p.name), @@ -218,7 +218,7 @@ LLFolderViewItem* LLFolderViewItem::getPreviousOpenNode(BOOL include_children) BOOL LLFolderViewItem::potentiallyVisible() { return getFiltered() // we've passed the filter - || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration()); // or we don't know yet + || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); // or we don't know yet } BOOL LLFolderViewItem::getFiltered() @@ -244,45 +244,17 @@ void LLFolderViewItem::setIcon(LLUIImagePtr icon) void LLFolderViewItem::refresh() { - if(!getListener()) return; + if(!getViewModelItem()) return; - mLabel = getListener()->getDisplayName(); - LLFolderType::EType preferred_type = getListener()->getPreferredType(); + mLabel = getViewModelItem()->getDisplayName(); - // *TODO: to be removed when database supports multi language. This is a - // temporary attempt to display the inventory folder in the user locale. - // mantipov: *NOTE: be sure this code is synchronized with LLFriendCardsManager::findChildFolderUUID - // it uses the same way to find localized string - - // HACK: EXT - 6028 ([HARD CODED]? Inventory > Library > "Accessories" folder) - // Translation of Accessories folder in Library inventory folder - bool accessories = false; - if(mLabel == std::string("Accessories")) - { - //To ensure that Accessories folder is in Library we have to check its parent folder. - //Due to parent LLFolderViewFloder is not set to this item yet we have to check its parent via Inventory Model - LLInventoryCategory* cat = gInventory.getCategory(getListener()->getUUID()); - if(cat) - { - const LLUUID& parent_folder_id = cat->getParentUUID(); - accessories = (parent_folder_id == gInventory.getLibraryRootFolderID()); - } - } - - //"Accessories" inventory category has folder type FT_NONE. So, this folder - //can not be detected as protected with LLFolderType::lookupIsProtectedType - if (accessories || LLFolderType::lookupIsProtectedType(preferred_type)) - { - LLTrans::findString(mLabel, "InvFolder " + mLabel); - }; - - setToolTip(mLabel); - setIcon(getListener()->getIcon()); - if (mRoot->useLabelSuffix()) - { - mLabelStyle = getListener()->getLabelStyle(); - mLabelSuffix = getListener()->getLabelSuffix(); -} + setToolTip(mLabel); + setIcon(getViewModelItem()->getIcon()); + if (mRoot->useLabelSuffix()) + { + mLabelStyle = getViewModelItem()->getLabelStyle(); + mLabelSuffix = getViewModelItem()->getLabelSuffix(); + } std::string searchable_label(mLabel); searchable_label.append(mLabelSuffix); @@ -381,7 +353,6 @@ BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) return FALSE; } mParentFolder = folder; - root->addItemID(getListener()->getUUID(), this); return folder->addItem(this); } @@ -420,7 +391,7 @@ S32 LLFolderViewItem::getItemHeight() return mItemHeight; } -void LLFolderViewItem::filter( LLInventoryFilter& filter) +void LLFolderViewItem::filter( LLFolderViewFilter& filter) { const BOOL previous_passed_filter = mPassedFilter; const BOOL passed_filter = filter.check(this); @@ -435,7 +406,8 @@ void LLFolderViewItem::filter( LLInventoryFilter& filter) } setFiltered(passed_filter, filter.getCurrentGeneration()); - mStringMatchOffset = filter.getStringMatchOffset(this); + //TODO RN: create interface for string highlighting + //mStringMatchOffset = filter.getStringMatchOffset(this); filter.decrementFilterCount(); if (getRoot()->getDebugFilters()) @@ -498,9 +470,9 @@ void LLFolderViewItem::selectItem(void) { if (mIsSelected == FALSE) { - if (getListener()) + if (getViewModelItem()) { - getListener()->selectItem(); + getViewModelItem()->selectItem(); } mIsSelected = TRUE; } @@ -508,9 +480,9 @@ void LLFolderViewItem::selectItem(void) BOOL LLFolderViewItem::isMovable() { - if( getListener() ) + if( getViewModelItem() ) { - return getListener()->isItemMovable(); + return getViewModelItem()->isItemMovable(); } else { @@ -520,9 +492,9 @@ BOOL LLFolderViewItem::isMovable() BOOL LLFolderViewItem::isRemovable() { - if( getListener() ) + if( getViewModelItem() ) { - return getListener()->isItemRemovable(); + return getViewModelItem()->isItemRemovable(); } else { @@ -548,9 +520,9 @@ BOOL LLFolderViewItem::remove() { return FALSE; } - if(getListener()) + if(getViewModelItem()) { - return getListener()->removeItem(); + return getViewModelItem()->removeItem(); } return TRUE; } @@ -558,25 +530,17 @@ BOOL LLFolderViewItem::remove() // Build an appropriate context menu for the item. void LLFolderViewItem::buildContextMenu(LLMenuGL& menu, U32 flags) { - if(getListener()) + if(getViewModelItem()) { - getListener()->buildContextMenu(menu, flags); + getViewModelItem()->buildContextMenu(menu, flags); } } void LLFolderViewItem::openItem( void ) { - if( getListener() ) + if( getViewModelItem() ) { - getListener()->openItem(); - } -} - -void LLFolderViewItem::preview( void ) -{ - if (getListener()) - { - getListener()->previewItem(); + getViewModelItem()->openItem(); } } @@ -584,9 +548,9 @@ void LLFolderViewItem::rename(const std::string& new_name) { if( !new_name.empty() ) { - if( getListener() ) + if( getViewModelItem() ) { - getListener()->renameItem(new_name); + getViewModelItem()->renameItem(new_name); if(mParentFolder) { @@ -601,19 +565,13 @@ const std::string& LLFolderViewItem::getSearchableLabel() const return mSearchableLabel; } -LLViewerInventoryItem * LLFolderViewItem::getInventoryItem(void) -{ - if (!getListener()) return NULL; - return gInventory.getItem(getListener()->getUUID()); -} - const std::string& LLFolderViewItem::getName( void ) const { - if(getListener()) + if(getViewModelItem()) { - return getListener()->getName(); + return getViewModelItem()->getName(); } - return z; + return LLStringUtil::null; } // LLView functionality @@ -689,9 +647,9 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) // *TODO: push this into listener and remove // dependency on llagent - if (getListener()) + if (getViewModelItem()) { - src = getListener()->getDragSource(); + src = getViewModelItem()->getDragSource(); } else { @@ -701,7 +659,7 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) can_drag = root->startDrag(src); if (can_drag) { - // if (getListener()) getListener()->startDrag(); + // if (getViewModelItem()) getViewModelItem()->startDrag(); // RN: when starting drag and drop, clear out last auto-open root->autoOpenTest(NULL); root->setShowSelectionContext(TRUE); @@ -738,7 +696,10 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) BOOL LLFolderViewItem::handleDoubleClick( S32 x, S32 y, MASK mask ) { - preview(); + if (getViewModelItem()) + { + getViewModelItem()->openItem(); + } return TRUE; } @@ -790,9 +751,9 @@ BOOL LLFolderViewItem::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, { BOOL accepted = FALSE; BOOL handled = FALSE; - if(getListener()) + if(getViewModelItem()) { - accepted = getListener()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); + accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); handled = accepted; if (accepted) { @@ -838,15 +799,12 @@ void LLFolderViewItem::draw() const S32 FOCUS_LEFT = 1; const LLFontGL* font = getLabelFontForStyle(mLabelStyle); - getListener()->update(); + getViewModelItem()->update(); //--------------------------------------------------------------------------------// // Draw open folder arrow // - const bool up_to_date = getListener() && getListener()->isUpToDate(); - const bool possibly_has_children = ((up_to_date && hasVisibleChildren()) // we fetched our children and some of them have passed the filter... - || (!up_to_date && getListener() && getListener()->hasChildren())); // ...or we know we have children but haven't fetched them (doesn't obey filter) - if (possibly_has_children) + if (hasVisibleChildren() || getViewModelItem()->hasChildren()) { LLUIImage* arrow_image = default_params.folder_arrow_image; gl_draw_scaled_rotated_image( @@ -943,25 +901,27 @@ void LLFolderViewItem::draw() mDragAndDropTarget = FALSE; } - const LLViewerInventoryItem *item = getInventoryItem(); - const BOOL highlight_link = mIconOverlay && item && item->getIsLinkType(); - //--------------------------------------------------------------------------------// - // Draw open icon - // - const S32 icon_x = mIndentation + ARROW_SIZE + TEXT_PAD; - if (!mIconOpen.isNull() && (llabs(mControlLabelRotation) > 80)) // For open folders - { - mIconOpen->draw(icon_x, getRect().getHeight() - mIconOpen->getHeight() - TOP_PAD + 1); - } - else if (mIcon) - { - mIcon->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); - } + //TODO RN: implement this in terms of getIcon() and getIconOverlay() - if (highlight_link) - { - mIconOverlay->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); - } + //const LLViewerInventoryItem *item = getInventoryItem(); + //const BOOL highlight_link = mIconOverlay && item && item->getIsLinkType(); + ////--------------------------------------------------------------------------------// + //// Draw open icon + //// + //const S32 icon_x = mIndentation + ARROW_SIZE + TEXT_PAD; + //if (!mIconOpen.isNull() && (llabs(mControlLabelRotation) > 80)) // For open folders + // { + // mIconOpen->draw(icon_x, getRect().getHeight() - mIconOpen->getHeight() - TOP_PAD + 1); + //} + //else if (mIcon) + //{ + // mIcon->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); + // } + + //if (highlight_link) + //{ + // mIconOverlay->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); + //} //--------------------------------------------------------------------------------// // Exit if no label to draw @@ -972,8 +932,9 @@ void LLFolderViewItem::draw() } LLColor4 color = (mIsSelected && filled) ? sHighlightFgColor : sFgColor; - if (highlight_link) color = sLinkColor; - if (in_library) color = sLibraryColor; + //TODO RN: implement this in terms of getColor() + //if (highlight_link) color = sLinkColor; + //if (getViewModelItem() && gInventory.isObjectDescendentOf(getViewModelItem()->getUUID(), gInventory.getLibraryRootFolderID())) color = sLibraryColor; F32 right_x = 0; F32 y = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; @@ -984,7 +945,7 @@ void LLFolderViewItem::draw() // if (getRoot()->getDebugFilters()) { - if (!getFiltered() && !possibly_has_children) + if (!getFiltered() && !getViewModelItem()->hasChildren()) { color.mV[VALPHA] *= 0.5f; } @@ -1016,7 +977,7 @@ void LLFolderViewItem::draw() //--------------------------------------------------------------------------------// // Highlight string match // - RN: expose interface for highlighting + //TODO RN: expose interface for highlighting //if (mStringMatchOffset != std::string::npos) //{ // // don't draw backgrounds for zero-length strings @@ -1098,7 +1059,7 @@ static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) { // sort before laying out contents - getRoot->getViewModel()->sort(this); + getRoot()->getFolderViewModel()->sort(this); LLFastTimer t2(FTM_ARRANGE); @@ -1122,8 +1083,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) for (folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) { LLFolderViewFolder* folderp = (*fit); - found = ( folderp->getListener() - && (folderp->getFiltered(filter_generation) + found = ( (folderp->getFiltered(filter_generation) || (folderp->getFilteredFolder(filter_generation) && folderp->hasFilteredDescendants(filter_generation)))); if (found) @@ -1164,10 +1124,9 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) } else { - folderp->setVisible( folderp->getListener() - && (folderp->getFiltered(filter_generation) + folderp->setVisible( folderp->getFiltered(filter_generation) || (folderp->getFilteredFolder(filter_generation) - && folderp->hasFilteredDescendants(filter_generation)))); // passed filter or has descendants that passed filter + && folderp->hasFilteredDescendants(filter_generation))); // passed filter or has descendants that passed filter } if (folderp->getVisible()) @@ -1277,7 +1236,7 @@ BOOL LLFolderViewFolder::needsArrange() void LLFolderViewFolder::requestSort() { - getRoot()->getViewModel()->requestSort(this); + getRoot()->getFolderViewModel()->requestSort(this); } void LLFolderViewFolder::setCompletedFilterGeneration(S32 generation, BOOL recurse_up) @@ -1293,7 +1252,7 @@ void LLFolderViewFolder::setCompletedFilterGeneration(S32 generation, BOOL recur } } -void LLFolderViewFolder::filter( LLInventoryFilter& filter) +void LLFolderViewFolder::filter( LLFolderViewFilter& filter) { S32 filter_generation = filter.getCurrentGeneration(); // if failed to pass filter newer than must_pass_generation @@ -1301,7 +1260,7 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) // check against items that have passed the filter S32 must_pass_generation = filter.getFirstRequiredGeneration(); - bool autoopen_folders = (filter.hasFilterString()); + bool autoopen_folders = filter.showAllResults(); // if we have already been filtered against this generation, skip out if (getCompletedFilterGeneration() >= filter_generation) @@ -1317,7 +1276,8 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) { // go ahead and flag this folder as done mLastFilterGeneration = filter_generation; - mStringMatchOffset = std::string::npos; + //TODO RN: create interface for string highlighting + //mStringMatchOffset = std::string::npos; } else // filter self only on first pass through { @@ -1351,15 +1311,6 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) return; } - // when applying a filter, matching folders get their contents downloaded first - if (filter.isNotDefault() - && getFiltered(filter.getFirstSuccessGeneration()) - && (getListener() - && !gInventory.isCategoryComplete(getListener()->getUUID()))) - { - LLInventoryModelBackgroundFetch::instance().start(getListener()->getUUID()); - } - // now query children for (folders_t::iterator iter = mFolders.begin(); iter != mFolders.end(); @@ -1449,7 +1400,7 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) } } -void LLFolderViewFolder::filterFolder(LLInventoryFilter& filter) +void LLFolderViewFolder::filterFolder(LLFolderViewFilter& filter) { const BOOL previous_passed_filter = mPassedFolderFilter; const BOOL passed_filter = filter.checkFolder(this); @@ -1944,9 +1895,9 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) BOOL LLFolderViewFolder::isMovable() { - if( getListener() ) + if( getViewModelItem() ) { - if( !(getListener()->isItemMovable()) ) + if( !(getViewModelItem()->isItemMovable()) ) { return FALSE; } @@ -1977,9 +1928,9 @@ BOOL LLFolderViewFolder::isMovable() BOOL LLFolderViewFolder::isRemovable() { - if( getListener() ) + if( getViewModelItem() ) { - if( !(getListener()->isItemRemovable()) ) + if( !(getViewModelItem()->isItemRemovable()) ) { return FALSE; } @@ -2023,7 +1974,7 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) requestArrange(); requestSort(); - FIXME: RN - make sort bubble up as long as parent Folder doesn't have anything matching sort criteria + //TODO RN - make sort bubble up as long as parent Folder doesn't have anything matching sort criteria //// Traverse parent folders and update creation date and resort, if necessary //LLFolderViewFolder* parentp = this; //while (parentp) @@ -2052,16 +2003,7 @@ BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) // rearrange all descendants too, as our indentation level might have changed folder->requestArrange(TRUE); requestSort(); - if (getRoot()->getSortFunction().isByDate()) - { - LLFolderViewFolder* parentp = getParentFolder(); - while(parentp) - { - // parent folder doesn't have a time stamp yet, so get it from us - parentp->requestSort(); - parentp = parentp->getParentFolder(); - } - } + return TRUE; } @@ -2100,15 +2042,15 @@ void LLFolderViewFolder::setOpenArrangeRecursively(BOOL openitem, ERecurseType r { BOOL was_open = isOpen(); mIsOpen = openitem; - if (getListener()) + if (getViewModelItem()) { if(!was_open && openitem) { - getListener()->openItem(); + getViewModelItem()->openItem(); } else if(was_open && !openitem) { - getListener()->closeItem(); + getViewModelItem()->closeItem(); } } @@ -2229,7 +2171,7 @@ BOOL LLFolderViewFolder::handleDragAndDropToThisFolder(MASK mask, EAcceptance* accept, std::string& tooltip_msg) { - BOOL accepted = getListener() && getListener()->dragOrDrop(mask,drop,c_type,cargo_data, tooltip_msg); + BOOL accepted = getViewModelItem() && getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); if (accepted) { @@ -2253,9 +2195,6 @@ BOOL LLFolderViewFolder::handleDragAndDropToThisFolder(MASK mask, BOOL LLFolderViewFolder::handleRightMouseDown( S32 x, S32 y, MASK mask ) { BOOL handled = FALSE; - // fetch contents of this folder, as context menu can depend on contents - // still, user would have to open context menu again to see the changes - gInventory.fetchDescendentsOf(getListener()->getUUID()); if( isOpen() ) { @@ -2311,11 +2250,11 @@ BOOL LLFolderViewFolder::handleMouseDown( S32 x, S32 y, MASK mask ) BOOL LLFolderViewFolder::handleDoubleClick( S32 x, S32 y, MASK mask ) { /* Disable outfit double click to wear - const LLUUID &cat_uuid = getListener()->getUUID(); + const LLUUID &cat_uuid = getViewModelItem()->getUUID(); const LLViewerInventoryCategory *cat = gInventory.getCategory(cat_uuid); if (cat && cat->getPreferredType() == LLFolderType::FT_OUTFIT) { - getListener()->performAction(NULL, NULL,"replaceoutfit"); + getViewModelItem()->performAction(NULL, NULL,"replaceoutfit"); return TRUE; } */ @@ -2594,30 +2533,31 @@ bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, { // ignore sort order for landmarks in the Favorites folder. // they should be always sorted as in Favorites bar. See EXT-719 - if (a->getSortGroup() == SG_ITEM - && b->getSortGroup() == SG_ITEM - && a->getInventoryType() == LLInventoryType::IT_LANDMARK - && b->getInventoryType() == LLInventoryType::IT_LANDMARK) - { + //TODO RN: fix sorting in favorites folder + //if (a->getSortGroup() == SG_ITEM + // && b->getSortGroup() == SG_ITEM + // && a->getInventoryType() == LLInventoryType::IT_LANDMARK + // && b->getInventoryType() == LLInventoryType::IT_LANDMARK) + //{ - static const LLUUID& favorites_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); + // static const LLUUID& favorites_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); - LLUUID a_uuid = a->getParentFolder()->getUUID(); - LLUUID b_uuid = b->getParentFolder()->getUUID(); + // LLUUID a_uuid = a->getParentFolder()->getUUID(); + // LLUUID b_uuid = b->getParentFolder()->getUUID(); - if ((a_uuid == favorites_folder_id && b_uuid == favorites_folder_id)) - { - // *TODO: mantipov: probably it is better to add an appropriate method to LLFolderViewItem - // or to LLInvFVBridge - LLViewerInventoryItem* aitem = (static_cast(a))->getItem(); - LLViewerInventoryItem* bitem = (static_cast(b))->getItem(); - if (!aitem || !bitem) - return false; - S32 a_sort = aitem->getSortField(); - S32 b_sort = bitem->getSortField(); - return a_sort < b_sort; - } - } + // if ((a_uuid == favorites_folder_id && b_uuid == favorites_folder_id)) + // { + // // *TODO: mantipov: probably it is better to add an appropriate method to LLFolderViewItem + // // or to LLInvFVBridge + // LLViewerInventoryItem* aitem = (static_cast(a))->getItem(); + // LLViewerInventoryItem* bitem = (static_cast(b))->getItem(); + // if (!aitem || !bitem) + // return false; + // S32 a_sort = aitem->getSortField(); + // S32 b_sort = bitem->getSortField(); + // return a_sort < b_sort; + // } + //} // We sort by name if we aren't sorting by date // OR if these are folders and we are sorting folders by name. @@ -2645,7 +2585,7 @@ bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, if (by_name) { - S32 compare = LLStringUtil::compareDict(a->getLabel(), b->getLabel()); + S32 compare = LLStringUtil::compareDict(a->getDisplayName(), b->getDisplayName()); if (0 == compare) { return (a->getCreationDate() > b->getCreationDate()); @@ -2661,7 +2601,7 @@ bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, time_t second_create = b->getCreationDate(); if (first_create == second_create) { - return (LLStringUtil::compareDict(a->getLabel(), b->getLabel()) < 0); + return (LLStringUtil::compareDict(a->getDisplayName(), b->getDisplayName()) < 0); } else { diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index b7588223da..7bcc9dd0a2 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -31,11 +31,10 @@ #include "lluiimage.h" class LLFolderView; -class LLFolderViewModelItemInventory; +class LLFolderViewModelItem; class LLFolderViewFolder; class LLFolderViewFunctor; -class LLInventoryFilter; -class LLViewerInventoryItem; +class LLFolderViewFilter; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLFolderViewItem @@ -57,8 +56,8 @@ public: icon_overlay, // for links folder_arrow_image, selection_image; - Optional root; - Mandatory listener; + Optional root; + Mandatory listener; Optional folder_indentation, // pixels item_height, @@ -98,7 +97,7 @@ protected: S32 mLabelWidth; bool mLabelWidthDirty; LLFolderViewFolder* mParentFolder; - LLFolderViewModelItemInventory* mListener; + LLFolderViewModelItem* mListener; BOOL mIsCurSelection; BOOL mSelectPending; LLFontGL::StyleFlags mLabelStyle; @@ -112,7 +111,8 @@ protected: S32 mItemHeight; BOOL mPassedFilter; S32 mLastFilterGeneration; - std::string::size_type mStringMatchOffset; + //TODO RN: create interface for string highlighting + //std::string::size_type mStringMatchOffset; F32 mControlLabelRotation; LLFolderView* mRoot; BOOL mDragAndDropTarget; @@ -159,8 +159,8 @@ public: virtual S32 arrange( S32* width, S32* height, S32 filter_generation ); virtual S32 getItemHeight(); - // applies filters to control visibility of inventory items - virtual void filter( LLInventoryFilter& filter); + // applies filters to control visibility of items + virtual void filter( LLFolderViewFilter& filter); // updates filter serial number and optionally propagated value up to root S32 getLastFilterGeneration() { return mLastFilterGeneration; } @@ -230,8 +230,8 @@ public: LLFolderViewItem* getNextOpenNode( BOOL include_children = TRUE ); LLFolderViewItem* getPreviousOpenNode( BOOL include_children = TRUE ); - const LLFolderViewModelItemInventory* getListener( void ) const { return mListener; } - LLFolderViewModelItemInventory* getListener( void ) { return mListener; } + const LLFolderViewModelItem* getViewModelItem( void ) const { return mListener; } + LLFolderViewModelItem* getViewModelItem( void ) { return mListener; } // just rename the object. void rename(const std::string& new_name); @@ -277,41 +277,10 @@ public: EAcceptance* accept, std::string& tooltip_msg); - // Gets the inventory item if it exists (null otherwise) - LLViewerInventoryItem * getInventoryItem(void); - // open - virtual void preview(void); - private: static std::map sFonts; // map of styles to fonts }; -class LLInventorySort -{ -public: - LLInventorySort(U32 order) - : mSortOrder(0), - mByDate(false), - mSystemToTop(false), - mFoldersByName(false) - { - mSortOrder = order; - mByDate = (order & LLInventoryFilter::SO_DATE); - mSystemToTop = (order & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); - mFoldersByName = (order & LLInventoryFilter::SO_FOLDERS_BY_NAME); - } - - bool isByDate() { return mByDate; } - U32 getSortOrder() { return mSortOrder; } - - bool operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b); -private: - U32 mSortOrder; - bool mByDate; - bool mSystemToTop; - bool mFoldersByName; -}; - //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLFolderViewFolder // @@ -379,8 +348,8 @@ public: BOOL hasFilteredDescendants(S32 filter_generation); BOOL hasFilteredDescendants(); - // applies filters to control visibility of inventory items - virtual void filter( LLInventoryFilter& filter); + // applies filters to control visibility of items + virtual void filter( LLFolderViewFilter& filter); virtual void setFiltered(BOOL filtered, S32 filter_generation); virtual BOOL getFiltered(); virtual BOOL getFiltered(S32 filter_generation); @@ -388,7 +357,7 @@ public: virtual void dirtyFilter(); // folder-specific filtering (filter status propagates top down instead of bottom up) - void filterFolder(LLInventoryFilter& filter); + void filterFolder(LLFolderViewFilter& filter); void setFilteredFolder(bool filtered, S32 filter_generation); bool getFilteredFolder(S32 filter_generation); @@ -496,12 +465,12 @@ public: virtual void draw(); - folders_t::iterator getFoldersBegin() const { return mFolders.begin(); } - folders_t::iterator getFoldersEnd() const { return mFolders.end(); } + folders_t::iterator getFoldersBegin() { return mFolders.begin(); } + folders_t::iterator getFoldersEnd() { return mFolders.end(); } folders_t::size_type getFoldersCount() const { return mFolders.size(); } - items_t::iterator getItemsBegin() const { return mItems.begin(); } - items_t::iterator getItemsEnd() const { return mItems.end(); } + items_t::const_iterator getItemsBegin() const { return mItems.begin(); } + items_t::const_iterator getItemsEnd() const { return mItems.end(); } items_t::size_type getItemsCount() const { return mItems.size(); } LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse); diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h new file mode 100644 index 0000000000..b81a81f837 --- /dev/null +++ b/indra/newview/llfolderviewmodel.h @@ -0,0 +1,313 @@ +/** + * @file llfolderviewmodel.h + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ +#ifndef LLFOLDERVIEWEVENTLISTENER_H +#define LLFOLDERVIEWEVENTLISTENER_H + +#include "lldarray.h" // *TODO: convert to std::vector +#include "llfoldertype.h" +#include "llfontgl.h" // just for StyleFlags enum +#include "llfolderviewitem.h" +#include "llinventorytype.h" +#include "llpermissionsflags.h" +#include "llpointer.h" +#include "llwearabletype.h" +#include "lltooldraganddrop.h" + +// These are grouping of inventory types. +// Order matters when sorting system folders to the top. +enum EInventorySortGroup +{ + SG_SYSTEM_FOLDER, + SG_TRASH_FOLDER, + SG_NORMAL_FOLDER, + SG_ITEM +}; + +class LLFontGL; +class LLInventoryModel; +class LLMenuGL; +class LLUIImage; +class LLUUID; +class LLFolderViewItem; +class LLFolderViewFolder; + +class LLFolderViewFilter +{ +public: + enum EFilterBehavior + { + FILTER_NONE, // nothing to do, already filtered + FILTER_RESTART, // restart filtering from scratch + FILTER_LESS_RESTRICTIVE, // existing filtered items will certainly pass this filter + FILTER_MORE_RESTRICTIVE // if you didn't pass the previous filter, you definitely won't pass this one + }; + +public: + + LLFolderViewFilter() {} + virtual ~LLFolderViewFilter() {} + + // +-------------------------------------------------------------------+ + // + Execution And Results + // +-------------------------------------------------------------------+ + virtual bool check(const LLFolderViewItem* item) = 0; + virtual bool check(const LLInventoryItem* item) = 0; + virtual bool checkFolder(const LLFolderViewFolder* folder) const = 0; + virtual bool checkFolder(const LLUUID& folder_id) const = 0; + + virtual void setEmptyLookupMessage(const std::string& message) = 0; + const virtual std::string& getEmptyLookupMessage() const = 0; + + virtual bool showAllResults() const = 0; + + // +-------------------------------------------------------------------+ + // + Status + // +-------------------------------------------------------------------+ + virtual bool isActive() const = 0; + virtual bool isModified() const = 0; + virtual bool isModifiedAndClear() = 0; + virtual void clearModified() = 0; + virtual const std::string& getName() const = 0; + virtual const std::string& getFilterText() = 0; + //RN: this is public to allow system to externally force a global refilter + virtual void setModified(EFilterBehavior behavior = FILTER_RESTART) = 0; + + // +-------------------------------------------------------------------+ + // + Count + // +-------------------------------------------------------------------+ + virtual void setFilterCount(S32 count) = 0; + virtual S32 getFilterCount() const = 0; + virtual void decrementFilterCount() = 0; + + // +-------------------------------------------------------------------+ + // + Default + // +-------------------------------------------------------------------+ + virtual bool isDefault() const = 0; + virtual bool isNotDefault() const = 0; + virtual void markDefault() = 0; + virtual void resetDefault() = 0; + + // +-------------------------------------------------------------------+ + // + Generation + // +-------------------------------------------------------------------+ + virtual S32 getCurrentGeneration() const = 0; + virtual S32 getFirstSuccessGeneration() const = 0; + virtual S32 getFirstRequiredGeneration() const = 0; +}; + +class LLFolderViewModelInterface +{ +public: + virtual void requestSortAll() = 0; + virtual void requestSort(class LLFolderViewFolder*) = 0; + + virtual void sort(class LLFolderViewFolder*) = 0; + virtual void filter(class LLFolderViewFolder*) = 0; +}; + +struct LLFolderViewModelCommon : public LLFolderViewModelInterface +{ + LLFolderViewModelCommon() + : mTargetSortVersion(0) + {} + + virtual void requestSortAll() + { + // sort everything + mTargetSortVersion++; + } + + virtual void requestSort(class LLFolderViewFolder* folder) + { + folder->requestSort(); + } + +protected: + bool needsSort(class LLFolderViewModelItem* item); + + S32 mTargetSortVersion; +}; + +// This is am abstract base class that users of the folderview classes +// would use to bridge the folder view with the underlying data +class LLFolderViewModelItem +{ +public: + virtual ~LLFolderViewModelItem( void ) {}; + + virtual void update() {} //called when drawing + virtual const std::string& getName() const = 0; + virtual const std::string& getDisplayName() const = 0; + + virtual LLPointer getIcon() const = 0; + virtual LLPointer getOpenIcon() const { return getIcon(); } + + virtual LLFontGL::StyleFlags getLabelStyle() const = 0; + virtual std::string getLabelSuffix() const = 0; + + virtual void openItem( void ) = 0; + virtual void closeItem( void ) = 0; + virtual void selectItem(void) = 0; + + virtual BOOL isItemRenameable() const = 0; + virtual BOOL renameItem(const std::string& new_name) = 0; + + virtual BOOL isItemMovable( void ) const = 0; // Can be moved to another folder + virtual void move( LLFolderViewModelItem* parent_listener ) = 0; + + virtual BOOL isItemRemovable( void ) const = 0; // Can be destroyed + virtual BOOL removeItem() = 0; + virtual void removeBatch(std::vector& batch) = 0; + + virtual BOOL isItemCopyable() const = 0; + virtual BOOL copyToClipboard() const = 0; + virtual BOOL cutToClipboard() const = 0; + + virtual BOOL isClipboardPasteable() const = 0; + virtual void pasteFromClipboard() = 0; + virtual void pasteLinkFromClipboard() = 0; + + virtual void buildContextMenu(LLMenuGL& menu, U32 flags) = 0; + + // This method should be called when a drag begins. returns TRUE + // if the drag can begin, otherwise FALSE. + virtual LLToolDragAndDrop::ESource getDragSource() const = 0; + virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; + + virtual bool hasChildren() const = 0; + + // This method will be called to determine if a drop can be + // performed, and will set drop to TRUE if a drop is + // requested. Returns TRUE if a drop is possible/happened, + // otherwise FALSE. + virtual BOOL dragOrDrop(MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + std::string& tooltip_msg) = 0; + + virtual void requestSort() = 0; + virtual S32 getSortVersion() = 0; + virtual void setSortVersion(S32 version) = 0; +}; + +class LLFolderViewModelItemCommon : public LLFolderViewModelItem +{ +public: + LLFolderViewModelItemCommon() + : mSortVersion(-1) + {} + + void requestSort() { mSortVersion = -1; } + S32 getSortVersion() { return mSortVersion; } + void setSortVersion(S32 version) { mSortVersion = version;} + +protected: + S32 mSortVersion; +}; + +template +class LLFolderViewModel : public LLFolderViewModelCommon +{ +protected: + LLFolderViewModel() {} + virtual ~LLFolderViewModel() {} + + typedef SORT_TYPE SortType; + typedef ITEM_TYPE ItemType; + typedef FOLDER_TYPE FolderType; + typedef FILTER_TYPE FilterType; + + virtual const SortType& getSorter() const { return mSorter; } + virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } + virtual FilterType& getFilter() { return mFilter; } + virtual void setFilter(const FilterType& filter) { mFilter = filter; } + +public: + + struct ViewModelCompare + { + ViewModelCompare(const SortType& sorter) + : mSorter(sorter) + {} + + int operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) + { + return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + } + + int operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) + { + return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + } + + const SortType& mSorter; + }; + + void sort(LLFolderViewFolder* folder) + { + if (needsSort(folder->getViewModelItem())) + { + std::sort(folder->getFoldersBegin(), folder->getFoldersEnd(), ViewModelCompare(getSorter())); + std::sort(folder->getItemsBegin(), folder->getItemsEnd(), ViewModelCompare(getSorter())); + folder->getViewModelItem()->setSortVersion(mTargetSortVersion); + folder->requestArrange(); + } + } + + //TODO RN: fix this + void filter(LLFolderViewFolder* folder) + { + /*FilterType& filter = getFilter(); + for (std::list::const_iterator it = folder->getItemsBegin(), end_it = folder->getItemsEnd(); + it != end_it; + ++it) + { + LLFolderViewItem* child_item = *it; + child_item->setFiltered(filter.checkFolder(static_cast(child_item->getViewModelItem())), filter.getCurrentGeneration()); + } + + for (std::list::const_iterator it = folder->getFoldersBegin(), end_it = folder->getFoldersEnd(); + it != end_it; + ++it) + { + LLFolderViewItem* child_folder = *it; + child_folder->setFiltered(filter.check(static_cast(child_folder->getViewModelItem())), filter.getCurrentGeneration()); + }*/ + } + +protected: + SortType mSorter; + FilterType mFilter; +}; + + +bool LLFolderViewModelCommon::needsSort(class LLFolderViewModelItem* item) +{ + return item->getSortVersion() < mTargetSortVersion; +} + + + +#endif diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index d0d2215361..b51bbf7bfe 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -208,7 +208,11 @@ const std::string& LLInvFVBridge::getName() const const std::string& LLInvFVBridge::getDisplayName() const { - return getName(); + if(mDisplayName.empty()) + { + buildDisplayName(); + } + return mDisplayName; } // Folders have full perms @@ -1292,7 +1296,7 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const void * cargo_data = (void *) obj; std::string tooltip_msg; - can_list = outbox_itemp->getListener()->dragOrDrop(mask, drop, cargo_type, cargo_data, tooltip_msg); + can_list = outbox_itemp->getViewModelItem()->dragOrDrop(mask, drop, cargo_type, cargo_data, tooltip_msg); } } } @@ -1407,7 +1411,7 @@ void LLItemBridge::performAction(LLInventoryModel* model, std::string action) LLFolderViewItem* folder_view_itemp = mInventoryPanel.get()->getItemByID(itemp->getParentUUID()); if (!folder_view_itemp) return; - folder_view_itemp->getListener()->pasteFromClipboard(); + folder_view_itemp->getViewModelItem()->pasteFromClipboard(); return; } else if ("paste_link" == action) @@ -1419,7 +1423,7 @@ void LLItemBridge::performAction(LLInventoryModel* model, std::string action) LLFolderViewItem* folder_view_itemp = mInventoryPanel.get()->getItemByID(itemp->getParentUUID()); if (!folder_view_itemp) return; - folder_view_itemp->getListener()->pasteLinkFromClipboard(); + folder_view_itemp->getViewModelItem()->pasteLinkFromClipboard(); return; } else if (isMarketplaceCopyAction(action)) @@ -1530,24 +1534,15 @@ PermissionMask LLItemBridge::getPermissionMask() const return perm_mask; } -const std::string& LLItemBridge::getDisplayName() const +void LLItemBridge::buildDisplayName() { - if(mDisplayName.empty()) + if(getItem()) { - buildDisplayName(getItem(), mDisplayName); - } - return mDisplayName; -} - -void LLItemBridge::buildDisplayName(LLInventoryItem* item, std::string& name) -{ - if(item) - { - name.assign(item->getName()); + mDisplayName.assign(getItem()->getName()); } else { - name.assign(LLStringUtil::null); + mDisplayName.assign(LLStringUtil::null); } } @@ -1665,11 +1660,11 @@ BOOL LLItemBridge::renameItem(const std::string& new_name) { LLPointer new_item = new LLViewerInventoryItem(item); new_item->rename(new_name); - buildDisplayName(new_item, mDisplayName); new_item->updateServer(FALSE); model->updateItem(new_item); model->notifyObservers(); + buildDisplayName(); } // return FALSE because we either notified observers (& therefore // rebuilt) or we didn't update. @@ -1821,9 +1816,37 @@ void LLFolderBridge::selectItem() // Have no fear: the first thing start() does is to test if everything for that folder has been fetched... LLInventoryModelBackgroundFetch::instance().start(getUUID(), true); } -std::string& LLFolderBridge::getDisplayName() const + +void LLFolderBridge::buildDisplayName() { - return mDisplayName; + LLFolderType::EType preferred_type = getPreferredType(); + + // *TODO: to be removed when database supports multi language. This is a + // temporary attempt to display the inventory folder in the user locale. + // mantipov: *NOTE: be sure this code is synchronized with LLFriendCardsManager::findChildFolderUUID + // it uses the same way to find localized string + + // HACK: EXT - 6028 ([HARD CODED]? Inventory > Library > "Accessories" folder) + // Translation of Accessories folder in Library inventory folder + bool accessories = false; + if(getName() == "Accessories") + { + //To ensure that Accessories folder is in Library we have to check its parent folder. + //Due to parent LLFolderViewFloder is not set to this item yet we have to check its parent via Inventory Model + LLInventoryCategory* cat = gInventory.getCategory(getUUID()); + if(cat) + { + const LLUUID& parent_folder_id = cat->getParentUUID(); + accessories = (parent_folder_id == gInventory.getLibraryRootFolderID()); + } + } + + //"Accessories" inventory category has folder type FT_NONE. So, this folder + //can not be detected as protected with LLFolderType::lookupIsProtectedType + if (accessories || LLFolderType::lookupIsProtectedType(preferred_type)) + { + LLTrans::findString(mDisplayName, "InvFolder " + getName()); + }; } @@ -1884,11 +1907,11 @@ public: LLIsItemRemovable() : mPassed(TRUE) {} virtual void doFolder(LLFolderViewFolder* folder) { - mPassed &= folder->getListener()->isItemRemovable(); + mPassed &= folder->getViewModelItem()->isItemRemovable(); } virtual void doItem(LLFolderViewItem* item) { - mPassed &= item->getListener()->isItemRemovable(); + mPassed &= item->getViewModelItem()->isItemRemovable(); } BOOL mPassed; }; @@ -3084,7 +3107,7 @@ void LLFolderBridge::pasteFromClipboard() void * cargo_data = (void *) item; std::string tooltip_msg; - can_list = outbox_itemp->getListener()->dragOrDrop(mask, drop, cargo_type, cargo_data, tooltip_msg); + can_list = outbox_itemp->getViewModelItem()->dragOrDrop(mask, drop, cargo_type, cargo_data, tooltip_msg); } } @@ -3494,6 +3517,11 @@ void LLFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags) { sSelf.markDead(); + // fetch contents of this folder, as context menu can depend on contents + // still, user would have to open context menu again to see the changes + gInventory.fetchDescendentsOf(getUUID()); + + menuentry_vec_t items; menuentry_vec_t disabled_items; @@ -3510,7 +3538,7 @@ void LLFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags) menu.arrangeAndClear(); } -BOOL LLFolderBridge::hasChildren() const +bool LLFolderBridge::hasChildren() const { LLInventoryModel* model = getInventoryModel(); if(!model) return FALSE; @@ -3802,9 +3830,9 @@ void LLFolderBridge::dropToFavorites(LLInventoryItem* inv_item) LLPointer cb = new AddFavoriteLandmarkCallback(); LLInventoryPanel* panel = mInventoryPanel.get(); LLFolderViewItem* drag_over_item = panel ? panel->getRootFolder()->getDraggingOverItem() : NULL; - if (drag_over_item && drag_over_item->getListener()) + if (drag_over_item && drag_over_item->getViewModelItem()) { - cb.get()->setTargetLandmarkId(drag_over_item->getListener()->getUUID()); + cb.get()->setTargetLandmarkId(drag_over_item->getViewModelItem()->getUUID()); } copy_inventory_item( @@ -4004,7 +4032,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, if (itemp) { LLUUID srcItemId = inv_item->getUUID(); - LLUUID destItemId = itemp->getListener()->getUUID(); + LLUUID destItemId = itemp->getViewModelItem()->getUUID(); gInventory.rearrangeFavoriteLandmarks(srcItemId, destItemId); } } @@ -4394,15 +4422,6 @@ void LLSoundBridge::openItem() } } -void LLSoundBridge::previewItem() -{ - LLViewerInventoryItem* item = getItem(); - if(item) - { - send_sound_trigger(item->getAssetUUID(), 1.0); - } -} - void LLSoundBridge::openSoundPreview(void* which) { LLSoundBridge *me = (LLSoundBridge *)which; @@ -5409,11 +5428,10 @@ BOOL LLObjectBridge::renameItem(const std::string& new_name) { LLPointer new_item = new LLViewerInventoryItem(item); new_item->rename(new_name); - buildDisplayName(new_item, mDisplayName); new_item->updateServer(FALSE); model->updateItem(new_item); - model->notifyObservers(); + buildDisplayName(); if (isAgentAvatarValid()) { @@ -6013,16 +6031,6 @@ void LLMeshBridge::openItem() } } -void LLMeshBridge::previewItem() -{ - LLViewerInventoryItem* item = getItem(); - if(item) - { - // preview mesh - } -} - - void LLMeshBridge::buildContextMenu(LLMenuGL& menu, U32 flags) { lldebugs << "LLMeshBridge::buildContextMenu()" << llendl; diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index 114144c8a4..bc5ac24c70 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -29,7 +29,7 @@ #include "llcallingcard.h" #include "llfloaterproperties.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llinventorymodel.h" #include "llinventoryobserver.h" #include "llinventorypanel.h" @@ -96,7 +96,6 @@ public: virtual std::string getLabelSuffix() const { return LLStringUtil::null; } virtual void openItem() {} virtual void closeItem() {} - virtual void previewItem() {openItem();} virtual void showProperties(); virtual BOOL isItemRenameable() const { return TRUE; } //virtual BOOL renameItem(const std::string& new_name) {} @@ -126,6 +125,8 @@ public: virtual LLInventoryType::EType getInventoryType() const { return mInvType; } virtual LLWearableType::EType getWearableType() const { return LLWearableType::WT_NONE; } EInventorySortGroup getSortGroup() const { return SG_ITEM; } + virtual LLInventoryObject* getInventoryObject() const; + //-------------------------------------------------------------------- // Convenience functions for adding various common menu options. @@ -142,7 +143,6 @@ protected: protected: LLInvFVBridge(LLInventoryPanel* inventory, LLFolderView* root, const LLUUID& uuid); - LLInventoryObject* getInventoryObject() const; LLInventoryModel* getInventoryModel() const; LLInventoryFilter* getInventoryFilter() const; @@ -167,13 +167,16 @@ protected: BOOL restamp); void removeBatchNoCheck(std::vector& batch); protected: - LLHandle mInventoryPanel; - LLFolderView* mRoot; - const LLUUID mUUID; // item id - LLInventoryType::EType mInvType; + LLHandle mInventoryPanel; + LLFolderView* mRoot; + const LLUUID mUUID; // item id + LLInventoryType::EType mInvType; bool mIsLink; LLTimer mTimeSinceRequestStart; + mutable std::string mDisplayName; + void purgeItem(LLInventoryModel *model, const LLUUID &uuid); + virtual void buildDisplayName(); }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -209,7 +212,6 @@ public: virtual void restoreToWorld(); virtual void gotoItem(); virtual LLUIImagePtr getIcon() const; - virtual const std::string& getDisplayName() const; virtual std::string getLabelSuffix() const; virtual LLFontGL::StyleFlags getLabelStyle() const; virtual PermissionMask getPermissionMask() const; @@ -218,7 +220,7 @@ public: virtual BOOL renameItem(const std::string& new_name); virtual BOOL removeItem(); virtual BOOL isItemCopyable() const; - virtual BOOL hasChildren() const { return FALSE; } + virtual bool hasChildren() const { return FALSE; } virtual BOOL isUpToDate() const { return TRUE; } /*virtual*/ void clearDisplayName() { mDisplayName.clear(); } @@ -228,9 +230,8 @@ public: protected: BOOL confirmRemoveItem(const LLSD& notification, const LLSD& response); virtual BOOL isItemPermissive() const; - static void buildDisplayName(LLInventoryItem* item, std::string& name); + virtual void buildDisplayName(); - mutable std::string mDisplayName; }; class LLFolderBridge : public LLInvFVBridge @@ -248,7 +249,7 @@ public: BOOL dragItemIntoFolder(LLInventoryItem* inv_item, BOOL drop, std::string& tooltip_msg); BOOL dragCategoryIntoFolder(LLInventoryCategory* inv_category, BOOL drop, std::string& tooltip_msg); - const std::string& getDisplayName() const; + virtual void buildDisplayName(); virtual void performAction(LLInventoryModel* model, std::string action); virtual void openItem(); @@ -271,7 +272,7 @@ public: virtual void pasteFromClipboard(); virtual void pasteLinkFromClipboard(); virtual void buildContextMenu(LLMenuGL& menu, U32 flags); - virtual BOOL hasChildren() const; + virtual bool hasChildren() const; virtual BOOL dragOrDrop(MASK mask, BOOL drop, EDragAndDropType cargo_type, void* cargo_data, @@ -331,6 +332,7 @@ public: static void staticFolderOptionsMenu(); private: + bool mCallingCards; bool mWearables; bool mIsLoading; @@ -365,7 +367,6 @@ public: const LLUUID& uuid) : LLItemBridge(inventory, root, uuid) {} virtual void openItem(); - virtual void previewItem(); virtual void buildContextMenu(LLMenuGL& menu, U32 flags); static void openSoundPreview(void*); }; @@ -555,7 +556,6 @@ class LLMeshBridge : public LLItemBridge public: virtual LLUIImagePtr getIcon() const; virtual void openItem(); - virtual void previewItem(); virtual void buildContextMenu(LLMenuGL& menu, U32 flags); protected: diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 5de3f0cb4e..1d25a7a1f9 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -29,7 +29,7 @@ #include "llinventoryfilter.h" // viewer includes -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llfolderviewitem.h" #include "llinventorymodel.h" #include "llinventorymodelbackgroundfetch.h" @@ -92,7 +92,7 @@ LLInventoryFilter::~LLInventoryFilter() BOOL LLInventoryFilter::check(const LLFolderViewItem* item) { // Clipboard cut items are *always* filtered so we need this value upfront - const LLFolderViewEventListener* listener = item->getListener(); + const LLFolderViewEventListener* listener = item->getViewModelItem(); const BOOL passed_clipboard = (listener ? checkAgainstClipboard(listener->getUUID()) : TRUE); // If it's a folder and we're showing all folders, return automatically. @@ -140,7 +140,7 @@ bool LLInventoryFilter::checkFolder(const LLFolderViewFolder* folder) const return false; } - const LLFolderViewModelItemInventory* listener = folder->getListener(); + const LLFolderViewModelItemInventory* listener = folder->getViewModelItem(); if (!listener) { llwarns << "Folder view event listener not found." << llendl; @@ -155,6 +155,13 @@ bool LLInventoryFilter::checkFolder(const LLFolderViewFolder* folder) const bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const { + // when applying a filter, matching folders get their contents downloaded first + if (isNotDefault() + && !gInventory.isCategoryComplete(getUUID()))) + { + LLInventoryModelBackgroundFetch::instance().start(getViewModelItem()->getUUID()); + } + // Always check against the clipboard const BOOL passed_clipboard = checkAgainstClipboard(folder_id); @@ -181,7 +188,7 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const BOOL LLInventoryFilter::checkAgainstFilterType(const LLFolderViewItem* item) const { - const LLFolderViewModelItemInventory* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); if (!listener) return FALSE; LLInventoryType::EType object_type = listener->getInventoryType(); @@ -349,11 +356,11 @@ bool LLInventoryFilter::checkAgainstClipboard(const LLUUID& object_id) const BOOL LLInventoryFilter::checkAgainstPermissions(const LLFolderViewItem* item) const { - const LLFolderViewModelItemInventory* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); if (!listener) return FALSE; PermissionMask perm = listener->getPermissionMask(); - const LLInvFVBridge *bridge = dynamic_cast(item->getListener()); + const LLInvFVBridge *bridge = dynamic_cast(item->getViewModelItem()); if (bridge && bridge->isLink()) { const LLUUID& linked_uuid = gInventory.getLinkedItemID(bridge->getUUID()); @@ -377,7 +384,7 @@ bool LLInventoryFilter::checkAgainstPermissions(const LLInventoryItem* item) con BOOL LLInventoryFilter::checkAgainstFilterLinks(const LLFolderViewItem* item) const { - const LLFolderViewModelItemInventory* listener = item->getListener(); + const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); if (!listener) return TRUE; const LLUUID object_id = listener->getUUID(); @@ -408,9 +415,9 @@ BOOL LLInventoryFilter::isDefault() const } // has user modified default filter params? -BOOL LLInventoryFilter::isNotDefault() const +bool LLInventoryFilter::isNotDefault() const { - BOOL not_default = FALSE; + bool not_default = FALSE; not_default |= (mFilterOps.mFilterObjectTypes != mDefaultFilterOps.mFilterObjectTypes); not_default |= (mFilterOps.mFilterCategoryTypes != mDefaultFilterOps.mFilterCategoryTypes); @@ -1125,6 +1132,12 @@ LLInventoryFilter& LLInventoryFilter::operator=( const LLInventoryFilter& othe fromParams(other.toParams()); } +bool LLInventoryFilter::showAllResults() const +{ + return hasFilterString(); +} + + bool LLInventoryFilter::FilterOps::DateRange::validateBlock( bool emit_errors /*= true*/ ) { diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index 4434008958..746e9a2820 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -29,6 +29,7 @@ #include "llinventorytype.h" #include "llpermissionsflags.h" +#include "llfolderviewmodel.h" class LLFolderViewItem; class LLFolderViewFolder; @@ -44,14 +45,6 @@ public: SHOW_NO_FOLDERS }; - enum EFilterBehavior - { - FILTER_NONE, // nothing to do, already filtered - FILTER_RESTART, // restart filtering from scratch - FILTER_LESS_RESTRICTIVE, // existing filtered items will certainly pass this filter - FILTER_MORE_RESTRICTIVE // if you didn't pass the previous filter, you definitely won't pass this one - }; - enum EFilterType { FILTERTYPE_NONE = 0, FILTERTYPE_OBJECT = 0x1 << 0, // normal default search-by-object-type @@ -89,7 +82,7 @@ public: max_date("max_date", time_max()) {} - bool validateBlock(bool emit_errors = true); + bool validateBlock(bool emit_errors = true) const; }; struct Params : public LLInitParam::Block @@ -200,6 +193,9 @@ public: bool checkAgainstFilterLinks(const LLFolderViewItem* item) const; bool checkAgainstClipboard(const LLUUID& object_id) const; + bool showAllResults() const; + + std::string::size_type getStringMatchOffset() const; std::string::size_type getStringMatchOffset(LLFolderViewItem* item) const; @@ -262,24 +258,6 @@ public: private: bool areDateLimitsSet(); - struct FilterOps - { - FilterOps(); - U32 mFilterTypes; - - U64 mFilterObjectTypes; // For _OBJECT - U64 mFilterWearableTypes; - U64 mFilterCategoryTypes; // For _CATEGORY - LLUUID mFilterUUID; // for UUID - - time_t mMinDate; - time_t mMaxDate; - U32 mHoursAgo; - EFolderShow mShowFolderState; - PermissionMask mPermissions; - U64 mFilterLinks; - }; - U32 mOrder; U32 mLastLogoff; @@ -287,7 +265,6 @@ private: FilterOps mFilterOps; FilterOps mDefaultFilterOps; - std::string::size_type mSubStringMatchOffset; std::string mFilterSubString; std::string mFilterSubStringOrig; const std::string mName; diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp index ab5b082915..1e494c3ef1 100644 --- a/indra/newview/llinventoryfunctions.cpp +++ b/indra/newview/llinventoryfunctions.cpp @@ -948,7 +948,7 @@ void LLSaveFolderState::setApply(BOOL apply) void LLSaveFolderState::doFolder(LLFolderViewFolder* folder) { LLMemType mt(LLMemType::MTYPE_INVENTORY_DO_FOLDER); - LLInvFVBridge* bridge = (LLInvFVBridge*)folder->getListener(); + LLInvFVBridge* bridge = (LLInvFVBridge*)folder->getViewModelItem(); if(!bridge) return; if(mApply) diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index d60b819da8..401daf6353 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -59,7 +59,7 @@ static const LLInventoryFVBridgeBuilder INVENTORY_BRIDGE_BUILDER; // // class LLFolderViewModelInventory // -void LLFolderViewModelInventory::requestSort(class LLFolderViewFolder* folder) +void LLFolderViewModelInventory::requestSort(class LLFolderViewFolder* folder) { base_t::requestSort(folder); if (getSorter().isByDate()) @@ -78,7 +78,7 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) if (!needsSort(folder)) return; - LLFolderViewModelItemInventory* modelp = static_cast(folder->getListener()); + LLFolderViewModelItemInventory* modelp = static_cast(folder->getViewModelItem()); if (modelp->getUUID().isNull()) return; for (std::list::iterator it = folder->getFoldersBegin(), end_it = folder->getFoldersEnd(); @@ -91,8 +91,8 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) if (child_folderp->getFoldersCount() > 0) { time_t most_recent_folder_time = - static_cast(child_folderp->getFoldersBegin()->getListener())->getCreationDate(); - LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getListener()); + static_cast(child_folderp->getFoldersBegin()->getViewModelItem())->getCreationDate(); + LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getViewModelItem()); if (most_recent_folder_time > modelp->getCreationDate()) { modelp->setCreationDate(most_recent_folder_time); @@ -101,9 +101,9 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) if (child_folderp->getItemsCount() > 0) { time_t most_recent_item_time = - static_cast(child_folderp->getItemsBegin()->getListener())->getCreationDate(); + static_cast(child_folderp->getItemsBegin()->getViewModelItem())->getCreationDate(); - LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getListener()); + LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getViewModelItem()); if (most_recent_item_time > modelp->getCreationDate()) { modelp->setCreationDate(most_recent_item_time); @@ -474,7 +474,7 @@ void LLInventoryPanel::modelChanged(U32 mask) if (view_item) { // Request refresh on this item (also flags for filtering) - LLInvFVBridge* bridge = (LLInvFVBridge*)view_item->getListener(); + LLInvFVBridge* bridge = (LLInvFVBridge*)view_item->getViewModelItem(); if(bridge) { // Clear the display name first, so it gets properly re-built during refresh() bridge->clearDisplayName(); @@ -493,7 +493,7 @@ void LLInventoryPanel::modelChanged(U32 mask) if (model_item && view_item) { view_item->destroyView(); - removeItemID(view_item->getListener()->getUUID()); + removeItemID(view_item->getViewModelItem()->getUUID()); } view_item = buildNewViews(item_id); view_folder = dynamic_cast(view_item); @@ -563,14 +563,14 @@ void LLInventoryPanel::modelChanged(U32 mask) // Item is to be moved and we found its new parent in the panel's directory, so move the item's UI. view_item->getParentFolder()->extractItem(view_item); view_item->addToFolder(new_parent); - addItemID(view_item->getListener()->getUUID(), view_item); + addItemID(view_item->getViewModelItem()->getUUID(), view_item); } else { // Item is to be moved outside the panel's directory (e.g. moved to trash for a panel that // doesn't include trash). Just remove the item's UI. view_item->destroyView(); - removeItemID(view_item->getListener()->getUUID()); + removeItemID(view_item->getViewModelItem()->getUUID()); } } } @@ -583,7 +583,7 @@ void LLInventoryPanel::modelChanged(U32 mask) { // Remove the item's UI. view_item->destroyView(); - removeItemID(view_item->getListener()->getUUID()); + removeItemID(view_item->getViewModelItem()->getUUID()); } } } @@ -615,7 +615,7 @@ void LLInventoryPanel::onIdle(void *userdata) const LLUUID& LLInventoryPanel::getRootFolderID() const { - return mFolderRoot->getListener()->getUUID(); + return mFolderRoot->getViewModelItem()->getUUID(); } void LLInventoryPanel::initializeViews() @@ -654,7 +654,7 @@ LLFolderViewItem* LLInventoryPanel::rebuildViewsFor(const LLUUID& id) if (old_view) { old_view->destroyView(); - removeItemID(old_view->getListener()->getUUID()); + removeItemID(old_view->getViewModelItem()->getUUID()); } return buildNewViews(id); @@ -727,7 +727,7 @@ LLFolderViewItem * LLInventoryPanel::createFolderViewItem(LLInvFVBridge * bridge LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) { LLInventoryObject const* objectp = gInventory.getObject(id); - LLUUID root_id = mFolderRoot->getListener()->getUUID(); + LLUUID root_id = mFolderRoot->getViewModelItem()->getUUID(); LLFolderViewFolder* parent_folder = NULL; LLFolderViewItem* itemp = NULL; @@ -786,7 +786,7 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) if (itemp) { itemp->addToFolder(parent_folder); - addItemID(itemp->getListener()->getUUID(), itemp); + addItemID(itemp->getViewModelItem()->getUUID(), itemp); } } } @@ -836,8 +836,8 @@ void LLInventoryPanel::openStartFolderOrMyInventory() { LLFolderViewFolder *fchild = dynamic_cast(child); if (fchild - && fchild->getListener() - && fchild->getListener()->getUUID() == gInventory.getRootFolderID()) + && fchild->getViewModelItem() + && fchild->getViewModelItem()->getUUID() == gInventory.getRootFolderID()) { fchild->setOpen(TRUE); break; @@ -854,7 +854,7 @@ void LLInventoryPanel::openSelected() { LLFolderViewItem* folder_item = mFolderRoot->getCurSelectedItem(); if(!folder_item) return; - LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getListener(); + LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getViewModelItem(); if(!bridge) return; bridge->openItem(); } @@ -980,7 +980,7 @@ void LLInventoryPanel::onSelectionChange(const std::deque& it mCompletionObserver->reset(); for (std::deque::const_iterator it = items.begin(); it != items.end(); ++it) { - LLUUID id = (*it)->getListener()->getUUID(); + LLUUID id = (*it)->getViewModelItem()->getUUID(); LLViewerInventoryItem* inv_item = mInventory->getItem(id); if (inv_item && !inv_item->isFinished()) @@ -1028,11 +1028,11 @@ bool LLInventoryPanel::beginIMSession() if(folder_item) { - LLFolderViewEventListener* fve_listener = folder_item->getListener(); + LLFolderViewEventListener* fve_listener = folder_item->getViewModelItem(); if (fve_listener && (fve_listener->getInventoryType() == LLInventoryType::IT_CATEGORY)) { - LLFolderBridge* bridge = (LLFolderBridge*)folder_item->getListener(); + LLFolderBridge* bridge = (LLFolderBridge*)folder_item->getViewModelItem(); if(!bridge) return true; LLViewerInventoryCategory* cat = bridge->getCategory(); if(!cat) return true; @@ -1066,7 +1066,7 @@ bool LLInventoryPanel::beginIMSession() } else { - LLInvFVBridge* listenerp = (LLInvFVBridge*)folder_item->getListener(); + LLInvFVBridge* listenerp = (LLInvFVBridge*)folder_item->getViewModelItem(); if (listenerp->getInventoryType() == LLInventoryType::IT_CALLINGCARD) { @@ -1113,7 +1113,7 @@ bool LLInventoryPanel::attachObject(const LLSD& userdata) set_iter != selected_items.end(); ++set_iter) { - items.push_back((*set_iter)->getListener()->getUUID()); + items.push_back((*set_iter)->getItemViewModel()->getUUID()); } // Attach selected items. @@ -1292,7 +1292,7 @@ LLFastTimer::DeclareTimer FTM_GET_ITEM_BY_ID("Get FolderViewItem by ID"); LLFolderViewItem* LLInventoryPanel::getItemByID(const LLUUID& id) { LLFastTimer _(FTM_GET_ITEM_BY_ID); - if (id == mFolderRoot->getListener()->getUUID()) + if (id == mFolderRoot->getViewModelItem()->getUUID()) { return mFolderRoot; } @@ -1317,7 +1317,7 @@ LLFolderViewFolder* LLInventoryPanel::getFolderByID(const LLUUID& id) void LLInventoryPanel::setSelectionByID( const LLUUID& obj_id, BOOL take_keyboard_focus ) { LLFolderViewItem* itemp = getItemByID(obj_id); - if(itemp && itemp->getListener()) + if(itemp && itemp->getViewModelItem()) { itemp->arrangeAndSet(TRUE, take_keyboard_focus); mSelectThisID.setNull(); diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 7cf82bf268..467c508aa0 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -39,25 +39,58 @@ #include "lluictrlfactory.h" #include -class LLFolderView; -class LLFolderViewFolder; -class LLFolderViewItem; -class LLInventoryFilter; -class LLInventoryModel; class LLInvFVBridge; class LLInventoryFVBridgeBuilder; -class LLMenuBarGL; -class LLCheckBoxCtrl; -class LLSpinCtrl; -class LLTextBox; -class LLIconCtrl; -class LLSaveFolderState; -class LLFilterEditor; -class LLTabContainer; class LLInvPanelComplObserver; +class LLFolderViewModelItemInventory + : public LLFolderViewModelItemCommon +{ +public: + virtual const LLUUID& getUUID() const = 0; + virtual time_t getCreationDate() const = 0; // UTC seconds + virtual void setCreationDate(time_t creation_date_utc) = 0; + virtual PermissionMask getPermissionMask() const = 0; + virtual LLFolderType::EType getPreferredType() const = 0; + virtual void showProperties(void) = 0; + virtual BOOL isItemInTrash( void) const { return FALSE; } // TODO: make into pure virtual. + virtual BOOL isUpToDate() const = 0; + virtual bool hasChildren() const = 0; + virtual LLInventoryType::EType getInventoryType() const = 0; + virtual void performAction(LLInventoryModel* model, std::string action) = 0; + virtual LLWearableType::EType getWearableType() const = 0; + virtual EInventorySortGroup getSortGroup() const = 0; + virtual LLInventoryObject* getInventoryObject() const = 0; +}; + +class LLInventorySort +{ +public: + LLInventorySort(U32 order) + : mSortOrder(0), + mByDate(false), + mSystemToTop(false), + mFoldersByName(false) + { + mSortOrder = order; + mByDate = (order & LLInventoryFilter::SO_DATE); + mSystemToTop = (order & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); + mFoldersByName = (order & LLInventoryFilter::SO_FOLDERS_BY_NAME); + } + + bool isByDate() { return mByDate; } + U32 getSortOrder() { return mSortOrder; } + + bool operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b); +private: + U32 mSortOrder; + bool mByDate; + bool mSystemToTop; + bool mFoldersByName; +}; + class LLFolderViewModelInventory -: public LLFolderViewModel + : public LLFolderViewModel { typedef LLFolderViewModel base_t; @@ -200,8 +233,8 @@ public: void setSelectionByID(const LLUUID& obj_id, BOOL take_keyboard_focus); void updateSelection(); - LLFolderViewModelInventory* getViewModel() { return &mViewModel; } - const LLFolderViewModelInventory* getViewModel() const { return &mViewModel; } + LLFolderViewModelInventory* getFolderViewModel() { return &mViewModel; } + const LLFolderViewModelInventory* getFolderViewModel() const { return &mViewModel; } protected: void openStartFolderOrMyInventory(); // open the first level of inventory @@ -276,25 +309,4 @@ private: LLUUID mStartFolderID; }; -class LLFolderViewModelItemInventory - : public LLFolderViewModelItemCommon -{ -public: - virtual const LLUUID& getUUID() const = 0; - virtual time_t getCreationDate() const = 0; // UTC seconds - virtual void setCreationDate(time_t creation_date_utc) = 0; - virtual PermissionMask getPermissionMask() const = 0; - virtual LLFolderType::EType getPreferredType() const = 0; - virtual void previewItem( void ) = 0; - virtual void showProperties(void) = 0; - virtual BOOL isItemInTrash( void) const { return FALSE; } // TODO: make into pure virtual. - virtual BOOL isUpToDate() const = 0; - virtual BOOL hasChildren() const = 0; - virtual LLInventoryType::EType getInventoryType() const = 0; - virtual void performAction(LLInventoryModel* model, std::string action) = 0; - virtual LLWearableType::EType getWearableType() const = 0; - virtual EInventorySortGroup getSortGroup() const; - virtual void requestSort(const LLInventorySort& sorter); -}; - #endif // LL_LLINVENTORYPANEL_H diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 234fa7590d..54ad2bcb76 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -102,7 +102,7 @@ void LLCheckFolderState::doFolder(LLFolderViewFolder* folder) // Counting only folders that pass the filter. // The listener check allow us to avoid counting the folder view // object itself because it has no listener assigned. - if (folder->hasFilteredDescendants() && folder->getListener()) + if (folder->hasFilteredDescendants() && folder->getViewModelItem()) { if (folder->isOpen()) { @@ -138,7 +138,7 @@ private: // virtual void LLOpenFolderByID::doFolder(LLFolderViewFolder* folder) { - if (folder->getListener() && folder->getListener()->getUUID() == mFolderID) + if (folder->getViewModelItem() && folder->getViewModelItem()->getUUID() == mFolderID) { if (!folder->isOpen()) { @@ -286,7 +286,7 @@ void LLLandmarksPanel::onShowProfile() if(!cur_item) return; - cur_item->getListener()->performAction(mCurrentSelectedList->getModel(),"about"); + cur_item->getViewModelItem()->performAction(mCurrentSelectedList->getModel(),"about"); } // virtual @@ -299,7 +299,7 @@ void LLLandmarksPanel::onTeleport() return; } - LLFolderViewModelItem* listenerp = current_item->getListener(); + LLFolderViewModelItem* listenerp = current_item->getViewModelItem(); if (listenerp && listenerp->getInventoryType() == LLInventoryType::IT_LANDMARK) { listenerp->openItem(); @@ -360,7 +360,7 @@ void LLLandmarksPanel::onSelectorButtonClicked() LLFolderViewItem* cur_item = mFavoritesInventoryPanel->getRootFolder()->getCurSelectedItem(); if (!cur_item) return; - LLFolderViewModelItem* listenerp = cur_item->getListener(); + LLFolderViewModelItem* listenerp = cur_item->getViewModelItem(); if (listenerp->getInventoryType() == LLInventoryType::IT_LANDMARK) { LLSD key; @@ -418,7 +418,7 @@ void LLLandmarksPanel::setItemSelected(const LLUUID& obj_id, BOOL take_keyboard_ bool LLLandmarksPanel::isLandmarkSelected() const { LLFolderViewItem* current_item = getCurSelectedItem(); - if(current_item && current_item->getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK) + if(current_item && current_item->getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) { return true; } @@ -441,9 +441,9 @@ bool LLLandmarksPanel::isReceivedFolderSelected() const void LLLandmarksPanel::doActionOnCurSelectedLandmark(LLLandmarkList::loaded_callback_t cb) { LLFolderViewItem* cur_item = getCurSelectedItem(); - if(cur_item && cur_item->getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK) + if(cur_item && cur_item->getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) { - LLLandmark* landmark = LLLandmarkActions::getLandmark(cur_item->getListener()->getUUID(), cb); + LLLandmark* landmark = LLLandmarkActions::getLandmark(cur_item->getViewModelItem()->getUUID(), cb); if (landmark) { cb(landmark); @@ -510,7 +510,7 @@ void LLLandmarksPanel::processParcelInfo(const LLParcelData& parcel_data) { LLFolderViewItem* cur_item = getCurSelectedItem(); if (!cur_item) return; - LLUUID id = cur_item->getListener()->getUUID(); + LLUUID id = cur_item->getViewModelItem()->getUUID(); LLInventoryItem* inv_item = mCurrentSelectedList->getModel()->getItem(id); doActionOnCurSelectedLandmark(boost::bind( &LLLandmarksPanel::doProcessParcelInfo, this, _1, cur_item, inv_item, parcel_data)); @@ -738,7 +738,7 @@ void LLLandmarksPanel::onActionsButtonClick() if(!cur_item) return; - LLFolderViewModelItem* listenerp = cur_item->getListener(); + LLFolderViewModelItem* listenerp = cur_item->getViewModelItem(); if(!listenerp) return; @@ -795,17 +795,17 @@ void LLLandmarksPanel::onAddAction(const LLSD& userdata) const if (item && mCurrentSelectedList == mLandmarksInventoryPanel) { LLFolderViewModelItem* folder_bridge = NULL; - if (item-> getListener()->getInventoryType() + if (item-> getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) { // for a landmark get parent folder bridge - folder_bridge = item->getParentFolder()->getListener(); + folder_bridge = item->getParentFolder()->getViewModelItem(); } - else if (item-> getListener()->getInventoryType() + else if (item-> getViewModelItem()->getInventoryType() == LLInventoryType::IT_CATEGORY) { // for a folder get its own bridge - folder_bridge = item->getListener(); + folder_bridge = item->getViewModelItem(); } menu_create_inventory_item(mCurrentSelectedList, @@ -836,7 +836,7 @@ void LLLandmarksPanel::onClipboardAction(const LLSD& userdata) const { LLFolderViewItem* cur_item = getCurSelectedItem(); if(cur_item) - LLLandmarkActions::copySLURLtoClipboard(cur_item->getListener()->getUUID()); + LLLandmarkActions::copySLURLtoClipboard(cur_item->getViewModelItem()->getUUID()); } else if ( "paste" == command_name) { @@ -1015,7 +1015,7 @@ bool LLLandmarksPanel::isActionEnabled(const LLSD& userdata) const LLFolderViewItem* cur_item = root_folder_view->getCurSelectedItem(); if (!cur_item) return false; - LLViewerInventoryItem* inv_item = cur_item->getInventoryItem(); + LLViewerInventoryItem* inv_item = static_cast(static_cast(cur_item->getViewModelItem())->getInventoryObject()); if (!inv_item) return false; LLUUID asset_uuid = inv_item->getAssetUUID(); @@ -1116,12 +1116,12 @@ void LLLandmarksPanel::onMenuVisibilityChange(LLUICtrl* ctrl, const LLSD& param) // If no item is found it might be a folder id. if (!item) continue; - LLFolderViewModelItem* listenerp = item->getListener(); + LLFolderViewModelItem* listenerp = item->getViewModelItem(); if(!listenerp) continue; // Trash category itself should not be included because it can't be // actually restored from trash. - are_all_items_in_trash &= listenerp->isItemInTrash() && (*iter)->getListener()->getUUID() != trash_id; + are_all_items_in_trash &= listenerp->isItemInTrash() && (*iter)->getItemViewModel()->getUUID() != trash_id; // If there are any selected items in Trash including the Trash category itself // we show "Restore Item" in context menu and hide other irrelevant items. @@ -1160,7 +1160,7 @@ bool LLLandmarksPanel::canItemBeModified(const std::string& command_name, LLFold bool can_be_modified = false; // landmarks can be modified in any other accordion... - if (item->getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK) + if (item->getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) { can_be_modified = true; @@ -1198,7 +1198,7 @@ bool LLLandmarksPanel::canItemBeModified(const std::string& command_name, LLFold if (can_be_modified) { - LLFolderViewModelItemInventory* listenerp = item->getListener(); + LLFolderViewModelItemInventory* listenerp = item->getViewModelItem(); if ("cut" == command_name) { diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index a7970bde24..fbdbce61bd 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -977,7 +977,7 @@ void LLPanelMainInventory::saveTexture(const LLSD& userdata) return; } - const LLUUID& item_id = current_item->getListener()->getUUID(); + const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); LLPreviewTexture* preview_texture = LLFloaterReg::showTypedInstance("preview_texture", LLSD(item_id), TAKE_FOCUS_YES); if (preview_texture) { @@ -1050,7 +1050,7 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) { return; } - const LLUUID item_id = current_item->getListener()->getUUID(); + const LLUUID item_id = current_item->getViewModelItem()->getUUID(); LLViewerInventoryItem *item = gInventory.getItem(item_id); if (item) { @@ -1065,7 +1065,7 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) { return; } - current_item->getListener()->performAction(getActivePanel()->getModel(), "goto"); + current_item->getViewModelItem()->performAction(getActivePanel()->getModel(), "goto"); } if (command_name == "find_links") @@ -1075,8 +1075,8 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) { return; } - const LLUUID& item_id = current_item->getListener()->getUUID(); - const std::string &item_name = current_item->getListener()->getName(); + const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); + const std::string &item_name = current_item->getViewModelItem()->getName(); mFilterSubString = item_name; LLInventoryFilter *filter = mActivePanel->getFilter(); filter->setFilterSubString(item_name); @@ -1094,11 +1094,11 @@ bool LLPanelMainInventory::isSaveTextureEnabled(const LLSD& userdata) LLFolderViewItem* current_item = getActivePanel()->getRootFolder()->getCurSelectedItem(); if (current_item) { - LLViewerInventoryItem *inv_item = current_item->getInventoryItem(); + LLViewerInventoryItem *inv_item = dynamic_cast(static_cast(current_item->getViewModelItem())->getInventoryObject()); if(inv_item) { bool can_save = inv_item->checkPermissionsSet(PERM_ITEM_UNRESTRICTED); - LLInventoryType::EType curr_type = current_item->getListener()->getInventoryType(); + LLInventoryType::EType curr_type = static_cast(current_item->getViewModelItem())->getInventoryType(); return can_save && (curr_type == LLInventoryType::IT_TEXTURE || curr_type == LLInventoryType::IT_SNAPSHOT); } } @@ -1123,7 +1123,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) { const LLUUID &item_id = (*iter); LLFolderViewItem *item = *iter; - const LLFolderViewModelItemInventory *listener = item->getListener(); + const LLFolderViewModelItemInventory *listener = item->getViewModelItem(); llassert(listener); if (!listener) return FALSE; can_delete &= listener->isItemRemovable(); @@ -1141,7 +1141,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) { LLFolderViewItem* current_item = getActivePanel()->getRootFolder()->getCurSelectedItem(); if (!current_item) return FALSE; - const LLUUID& item_id = current_item->getListener()->getUUID(); + const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); const LLViewerInventoryItem *item = gInventory.getItem(item_id); if (item && item->getIsLinkType() && !item->getIsBrokenLink()) { @@ -1157,7 +1157,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) if (selection_set.size() != 1) return FALSE; LLFolderViewItem* current_item = root->getCurSelectedItem(); if (!current_item) return FALSE; - const LLUUID& item_id = current_item->getListener()->getUUID(); + const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); const LLInventoryObject *obj = gInventory.getObject(item_id); if (obj && !obj->getIsLinkType() && LLAssetType::lookupCanLink(obj->getType())) { @@ -1170,7 +1170,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) { LLFolderViewItem* current_item = getActivePanel()->getRootFolder()->getCurSelectedItem(); if (!current_item) return FALSE; - const LLUUID& item_id = current_item->getListener()->getUUID(); + const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); const LLViewerInventoryItem *item = gInventory.getItem(item_id); if (item && item->getIsBrokenLink()) { diff --git a/indra/newview/llpanelmarketplaceinbox.cpp b/indra/newview/llpanelmarketplaceinbox.cpp index 6804342106..8a07d6d516 100644 --- a/indra/newview/llpanelmarketplaceinbox.cpp +++ b/indra/newview/llpanelmarketplaceinbox.cpp @@ -94,7 +94,7 @@ LLInventoryPanel * LLPanelMarketplaceInbox::setupInventoryPanel() mInventoryPanel->setShape(inventory_placeholder_rect); // Set the sort order newest to oldest - mInventoryPanel->getViewModel()->setSorter(LLInventoryFilter::SO_DATE); + mInventoryPanel->getFolderViewModel()->setSorter(LLInventoryFilter::SO_DATE); mInventoryPanel->getFilter()->markDefault(); // Set selection callback for proper update of inventory status buttons diff --git a/indra/newview/llpanelmarketplaceoutboxinventory.cpp b/indra/newview/llpanelmarketplaceoutboxinventory.cpp index b5c7c4ca88..7db01d9059 100644 --- a/indra/newview/llpanelmarketplaceoutboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceoutboxinventory.cpp @@ -29,7 +29,7 @@ #include "llpanelmarketplaceoutboxinventory.h" #include "llfolderviewitem.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" #include "llpanellandmarks.h" diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 3d7d9d573e..240c5b2da4 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -113,7 +113,6 @@ public: virtual void openItem(); virtual BOOL canOpenItem() const { return FALSE; } virtual void closeItem() {} - virtual void previewItem(); virtual void selectItem() {} virtual BOOL isItemRenameable() const; virtual BOOL renameItem(const std::string& new_name); @@ -352,11 +351,6 @@ void LLTaskInvFVBridge::openItem() lldebugs << "LLTaskInvFVBridge::openItem()" << llendl; } -void LLTaskInvFVBridge::previewItem() -{ - openItem(); -} - BOOL LLTaskInvFVBridge::isItemRenameable() const { if(gAgent.isGodlike()) return TRUE; @@ -1754,7 +1748,7 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li view = LLUICtrlFactory::create (params); } view->addToFolder(folder); - addItemID(view->getListener()->getUUID(), view); + addItemID(view->getViewModelItem()->getUUID(), view); } } diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp index 4abc7fea0e..a95d27f992 100644 --- a/indra/newview/llpaneloutfitedit.cpp +++ b/indra/newview/llpaneloutfitedit.cpp @@ -270,7 +270,7 @@ private: if (inventory_panel->getVisible()) { - inventory_panel->getViewModel()->setSorter(sort_order); + inventory_panel->getFolderViewModel()->setSorter(sort_order); } else { @@ -1310,7 +1310,7 @@ void LLPanelOutfitEdit::getCurrentItemUUID(LLUUID& selected_id) LLFolderViewItem* curr_item = mInventoryItemsPanel->getRootFolder()->getCurSelectedItem(); if (!curr_item) return; - LLFolderViewModelItemInventory* listenerp = curr_item->getListener(); + LLFolderViewModelItemInventory* listenerp = curr_item->getViewModelItem(); if (!listenerp) return; selected_id = listenerp->getUUID(); @@ -1332,7 +1332,7 @@ void LLPanelOutfitEdit::getSelectedItemsUUID(uuid_vec_t& uuid_list) it != end_it; ++it) { - uuid_list.push_back((*it)->getListener()->getUUID()); + uuid_list.push_back((*it)->getItemViewModel()->getUUID()); } } else if (mWearablesListViewPanel->getVisible()) @@ -1384,7 +1384,7 @@ void LLPanelOutfitEdit::saveListSelection() for (std::set::const_iterator item_id = selected_ids.begin(); item_id != selected_ids.end(); ++item_id) { - mWearableItemsList->selectItemByUUID((*item_id)->getListener()->getUUID(), true); + mWearableItemsList->selectItemByUUID((*item_id)->getItemViewModel()->getUUID(), true); } mWearableItemsList->scrollToShowFirstSelectedItem(); } diff --git a/indra/newview/llplacesinventorypanel.cpp b/indra/newview/llplacesinventorypanel.cpp index 1de26660bc..da5ce7d4b7 100644 --- a/indra/newview/llplacesinventorypanel.cpp +++ b/indra/newview/llplacesinventorypanel.cpp @@ -30,7 +30,7 @@ #include "llplacesinventorypanel.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llfolderview.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" @@ -162,7 +162,7 @@ BOOL LLPlacesFolderView::handleRightMouseDown(S32 x, S32 y, MASK mask) // then determine its type and set necessary menu handle if (getCurSelectedItem()) { - LLInventoryType::EType inventory_type = getCurSelectedItem()->getListener()->getInventoryType(); + LLInventoryType::EType inventory_type = getCurSelectedItem()->getViewModelItem()->getInventoryType(); inventory_type_menu_handle_t::iterator it_handle = mMenuHandlesByInventoryType.find(inventory_type); if (it_handle != mMenuHandlesByInventoryType.end()) diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index f069da5869..194aa7f71b 100644 --- a/indra/newview/llsidepanelappearance.cpp +++ b/indra/newview/llsidepanelappearance.cpp @@ -38,7 +38,7 @@ #include "llfiltereditor.h" #include "llfloaterreg.h" #include "llfloaterworldmap.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "lloutfitobserver.h" #include "llpaneleditwearable.h" #include "llpaneloutfitsinventory.h" diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp index cc578b5799..f3d32e7a67 100644 --- a/indra/newview/llsidepanelinventory.cpp +++ b/indra/newview/llsidepanelinventory.cpp @@ -473,7 +473,7 @@ void LLSidepanelInventory::performActionOnSelection(const std::string &action) } } - current_item->getListener()->performAction(mPanelMainInventory->getActivePanel()->getModel(), action); + current_item->getViewModelItem()->performAction(mPanelMainInventory->getActivePanel()->getModel(), action); } void LLSidepanelInventory::onWearButtonClicked() @@ -663,7 +663,7 @@ LLInventoryItem *LLSidepanelInventory::getSelectedItem() return NULL; } } - const LLUUID &item_id = current_item->getListener()->getUUID(); + const LLUUID &item_id = current_item->getViewModelItem()->getUUID(); LLInventoryItem *item = gInventory.getItem(item_id); return item; } diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index ad2db966bd..a995f07df7 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -39,7 +39,7 @@ #include "llfocusmgr.h" #include "llviewertexture.h" #include "llfolderview.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llinventory.h" #include "llinventoryfunctions.h" #include "llinventorymodelbackgroundfetch.h" @@ -800,7 +800,7 @@ void LLFloaterTexturePicker::onSelectionChange(const std::dequegetListener()->getUUID()); + LLInventoryItem* itemp = gInventory.getItem(first_item->getViewModelItem()->getUUID()); mNoCopyTextureSelected = FALSE; if (itemp) { -- cgit v1.3 From 59987bb051ed39146ec9b3831eec81434779a73f Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Mon, 18 Jun 2012 19:01:59 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose continuing fixing build errors general cleanup --- indra/newview/llfolderview.cpp | 158 +++++++++++++-------------- indra/newview/llfolderview.h | 61 +++++++++++ indra/newview/llfolderviewitem.cpp | 2 +- indra/newview/llfolderviewitem.h | 5 + indra/newview/llfolderviewmodel.h | 25 +++-- indra/newview/llinventorybridge.cpp | 6 +- indra/newview/llinventoryfilter.cpp | 157 ++++++++++++++------------- indra/newview/llinventoryfilter.h | 20 ++-- indra/newview/llinventoryfunctions.h | 58 ---------- indra/newview/llinventorypanel.cpp | 181 ++++++++++++++----------------- indra/newview/llinventorypanel.h | 20 ++-- indra/newview/llpanelobjectinventory.cpp | 2 +- indra/newview/llsidepanelinventory.h | 3 +- 13 files changed, 342 insertions(+), 356 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 918e68e444..f0edbb638a 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -32,12 +32,8 @@ #include "llcallbacklist.h" #include "llinventorybridge.h" #include "llclipboard.h" // *TODO: remove this once hack below gone. -#include "llinventoryfilter.h" -#include "llinventoryfunctions.h" -#include "llinventorymodelbackgroundfetch.h" #include "llinventorypanel.h" #include "llfoldertype.h" -#include "llfloaterinventory.h"// hacked in for the bonus context menu items. #include "llkeyboard.h" #include "lllineeditor.h" #include "llmenugl.h" @@ -65,7 +61,6 @@ #include "llfontgl.h" #include "llgl.h" #include "llrender.h" -#include "llinventory.h" // Third-party library includes #include @@ -141,7 +136,7 @@ const LLRect LLFolderViewScrollContainer::getScrolledViewRect() const LLFolderView* folder_view = dynamic_cast(mScrolledView); if (folder_view) { - S32 height = folder_view->mRunningHeight; + S32 height = folder_view->getRect().getHeight(); rect = mScrolledView->getRect(); rect.setLeftTopAndSize(rect.mLeft, rect.mTop, rect.getWidth(), height); @@ -188,7 +183,7 @@ LLFolderView::LLFolderView(const Params& p) mNeedsAutoRename(FALSE), mDebugFilters(FALSE), mSortOrder(LLInventoryFilter::SO_FOLDERS_BY_NAME), // This gets overridden by a pref immediately - mFilter( new LLInventoryFilter(p.title) ), + mFilter(), mShowSelectionContext(FALSE), mShowSingleSelection(FALSE), mArrangeGeneration(0), @@ -304,7 +299,7 @@ BOOL LLFolderView::canFocusChildren() const BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) { // enforce sort order of My Inventory followed by Library - if (folder->getViewModelItem()->getUUID() == gInventory.getLibraryRootFolderID()) + if (((LLFolderViewModelItemInventory*)folder->getViewModelItem())->getUUID() == gInventory.getLibraryRootFolderID()) { mFolders.push_back(folder); } @@ -364,7 +359,7 @@ S32 LLFolderView::arrange( S32* unused_width, S32* unused_height, S32 filter_gen return llround(mTargetHeight); } -static LLFastTimer::DeclareTimer FTM_FILTER("Filter Inventory"); +static LLFastTimer::DeclareTimer FTM_FILTER("Filter Folder View"); void LLFolderView::filter( LLFolderViewFilter& filter ) { @@ -392,7 +387,7 @@ void LLFolderView::reshape(S32 width, S32 height, BOOL called_from_parent) scroll_rect = mScrollContainer->getContentWindowRect(); } width = llmax(mMinWidth, scroll_rect.getWidth()); - height = llmax(mCurHeight, scroll_rect.getHeight()); + height = llmax(llround(mCurHeight), scroll_rect.getHeight()); // Restrict width within scroll container's width if (mUseEllipses && mScrollContainer) @@ -645,7 +640,6 @@ void LLFolderView::clearSelection() } mSelectedItems.clear(); - mSelectThisID.setNull(); } std::set LLFolderView::getSelectionList() const @@ -735,9 +729,9 @@ void LLFolderView::draw() } else if (mShowEmptyMessage) { - if (LLInventoryModelBackgroundFetch::instance().folderFetchActive() || mCompletedFilterGeneration < mFilter->getFirstSuccessGeneration()) + if (!mViewModel->contentsReady() || mCompletedFilterGeneration < mFilter->getFirstSuccessGeneration()) { - RN: Get this from filter + // TODO RN: Get this from filter mStatusText = LLTrans::getString("Searching"); } else @@ -921,7 +915,7 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL else if (count > 1) { LLDynamicArray listeners; - LLFolderViewModelItemInventory* listener; + LLFolderViewModelItem* listener; LLFolderViewItem* last_item = items[count - 1]; LLFolderViewItem* new_selection = last_item->getNextOpenNode(FALSE); while(new_selection && new_selection->isSelected()) @@ -948,12 +942,12 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL for(S32 i = 0; i < count; ++i) { listener = items[i]->getViewModelItem(); - if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) + if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) { listeners.put(listener); } } - listener = static_cast(listeners.get(0)); + listener = static_cast(listeners.get(0)); if(listener) { listener->removeBatch(listeners); @@ -969,36 +963,37 @@ void LLFolderView::openSelectedItems( void ) { if(getVisible() && getEnabled()) { - if (mSelectedItems.size() == 1) - { - mSelectedItems.front()->openItem(); - } - else - { - LLMultiPreview* multi_previewp = new LLMultiPreview(); - LLMultiProperties* multi_propertiesp = new LLMultiProperties(); - - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - // IT_{OBJECT,ATTACHMENT} creates LLProperties - // floaters; others create LLPreviews. Put - // each one in the right type of container. - LLFolderViewModelItemInventory* listener = (*item_it)->getViewModelItem(); - bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); - if (is_prop) - LLFloater::setFloaterHost(multi_propertiesp); - else - LLFloater::setFloaterHost(multi_previewp); - (*item_it)->openItem(); - } - - LLFloater::setFloaterHost(NULL); - // *NOTE: LLMulti* will safely auto-delete when open'd - // without any children. - multi_previewp->openFloater(LLSD()); - multi_propertiesp->openFloater(LLSD()); - } + // TODO RN: move to LLFolderViewModelInventory + //if (mSelectedItems.size() == 1) + //{ + // mSelectedItems.front()->openItem(); + //} + //else + //{ + // LLMultiPreview* multi_previewp = new LLMultiPreview(); + // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); + + // selected_items_t::iterator item_it; + // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + // { + // // IT_{OBJECT,ATTACHMENT} creates LLProperties + // // floaters; others create LLPreviews. Put + // // each one in the right type of container. + // LLFolderViewModelItemInventory* listener = (*item_it)->getViewModelItem(); + // bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); + // if (is_prop) + // LLFloater::setFloaterHost(multi_propertiesp); + // else + // LLFloater::setFloaterHost(multi_previewp); + // (*item_it)->openItem(); + // } + + // LLFloater::setFloaterHost(NULL); + // // *NOTE: LLMulti* will safely auto-delete when open'd + // // without any children. + // multi_previewp->openFloater(LLSD()); + // multi_propertiesp->openFloater(LLSD()); + //} } } @@ -1006,27 +1001,28 @@ void LLFolderView::propertiesSelectedItems( void ) { if(getVisible() && getEnabled()) { - if (mSelectedItems.size() == 1) - { - LLFolderViewItem* folder_item = mSelectedItems.front(); - if(!folder_item) return; - folder_item->getViewModelItem()->showProperties(); - } - else - { - LLMultiProperties* multi_propertiesp = new LLMultiProperties(); + // TODO RN: move to LLFolderViewModelInventory + //if (mSelectedItems.size() == 1) + //{ + // LLFolderViewItem* folder_item = mSelectedItems.front(); + // if(!folder_item) return; + // folder_item->getViewModelItem()->showProperties(); + //} + //else + //{ + // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); - LLFloater::setFloaterHost(multi_propertiesp); + // LLFloater::setFloaterHost(multi_propertiesp); - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - (*item_it)->getViewModelItem()->showProperties(); - } + // selected_items_t::iterator item_it; + // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + // { + // (*item_it)->getViewModelItem()->showProperties(); + // } - LLFloater::setFloaterHost(NULL); - multi_propertiesp->openFloater(LLSD()); - } + // LLFloater::setFloaterHost(NULL); + // multi_propertiesp->openFloater(LLSD()); + //} } } @@ -1140,7 +1136,7 @@ void LLFolderView::copy() S32 count = mSelectedItems.size(); if(getVisible() && getEnabled() && (count > 0)) { - LLFolderViewModelItemInventory* listener = NULL; + LLFolderViewModelItem* listener = NULL; selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { @@ -1164,7 +1160,7 @@ BOOL LLFolderView::canCut() const for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { const LLFolderViewItem* item = *selected_it; - const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); + const LLFolderViewModelItem* listener = item->getViewModelItem(); if (!listener || !listener->isItemRemovable()) { @@ -1181,7 +1177,7 @@ void LLFolderView::cut() S32 count = mSelectedItems.size(); if(getVisible() && getEnabled() && (count > 0)) { - LLFolderViewModelItemInventory* listener = NULL; + LLFolderViewModelItem* listener = NULL; selected_items_t::iterator item_it; for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) { @@ -1210,7 +1206,7 @@ BOOL LLFolderView::canPaste() const { // *TODO: only check folders and parent folders of items const LLFolderViewItem* item = (*item_it); - const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); + const LLFolderViewModelItem* listener = item->getViewModelItem(); if(!listener || !listener->isClipboardPasteable()) { const LLFolderViewFolder* folderp = item->getParentFolder(); @@ -1232,24 +1228,24 @@ void LLFolderView::paste() if(getVisible() && getEnabled()) { // find set of unique folders to paste into - std::set folder_set; + std::set folder_set; selected_items_t::iterator selected_it; for (selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) { LLFolderViewItem* item = *selected_it; - LLFolderViewModelItemInventory* listener = item->getViewModelItem(); - if (listener->getInventoryType() != LLInventoryType::IT_CATEGORY) + LLFolderViewFolder* folder = dynamic_cast(item); + if (folder == NULL) { item = item->getParentFolder(); } - folder_set.insert(item); + folder_set.insert(folder); } - std::set::iterator set_iter; + std::set::iterator set_iter; for(set_iter = folder_set.begin(); set_iter != folder_set.end(); ++set_iter) { - LLFolderViewModelItemInventory* listener = (*set_iter)->getListener(); + LLFolderViewModelItem* listener = (*set_iter)->getViewModelItem(); if(listener && listener->isClipboardPasteable()) { listener->pasteFromClipboard(); @@ -1765,15 +1761,9 @@ BOOL LLFolderView::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, // when drop is not handled by child, it should be handled // by the folder which is the hierarchy root. - if (!handled - && getViewModelItem()->getUUID().notNull()) - { - handled = LLFolderViewFolder::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg); - } - - if (handled) + if (!handled) { - lldebugst(LLERR_USER_INPUT) << "dragAndDrop handled by LLFolderView" << llendl; + handled = LLFolderViewFolder::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg); } return handled; @@ -1996,7 +1986,7 @@ void LLFolderView::doIdle() // Open filtered folders for folder views with mAutoSelectOverride=TRUE. // Used by LLPlacesFolderView. - if (mAutoSelectOverride && !mFilter->getFilterSubString().empty()) + if (mAutoSelectOverride && mFilter->showAllResults()) { // these are named variables to get around gcc not binding non-const references to rvalues // and functor application is inherently non-const to allow for stateful functors @@ -2008,7 +1998,7 @@ void LLFolderView::doIdle() } BOOL filter_finished = mCompletedFilterGeneration >= mFilter->getCurrentGeneration() - && !LLInventoryModelBackgroundFetch::instance().folderFetchActive(); + && mViewModel->contentsReady(); if (filter_finished || gFocusMgr.childHasKeyboardFocus(inventory_panel) || gFocusMgr.childHasMouseCapture(inventory_panel)) diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 9b8a629387..813b4d130f 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -337,6 +337,67 @@ public: }; + +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +// Class LLFolderViewFunctor +// +// Simple abstract base class for applying a functor to folders and +// items in a folder view hierarchy. This is suboptimal for algorithms +// that only work folders or only work on items, but I'll worry about +// that later when it's determined to be too slow. +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +class LLFolderViewFunctor +{ +public: + virtual ~LLFolderViewFunctor() {} + virtual void doFolder(LLFolderViewFolder* folder) = 0; + virtual void doItem(LLFolderViewItem* item) = 0; +}; + +class LLSelectFirstFilteredItem : public LLFolderViewFunctor +{ +public: + LLSelectFirstFilteredItem() : mItemSelected(FALSE) {} + virtual ~LLSelectFirstFilteredItem() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); + BOOL wasItemSelected() { return mItemSelected; } +protected: + BOOL mItemSelected; +}; + +class LLOpenFilteredFolders : public LLFolderViewFunctor +{ +public: + LLOpenFilteredFolders() {} + virtual ~LLOpenFilteredFolders() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); +}; + +class LLSaveFolderState : public LLFolderViewFunctor +{ +public: + LLSaveFolderState() : mApply(FALSE) {} + virtual ~LLSaveFolderState() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item) {} + void setApply(BOOL apply); + void clearOpenFolders() { mOpenFolders.clear(); } +protected: + std::set mOpenFolders; + BOOL mApply; +}; + +class LLOpenFoldersWithSelection : public LLFolderViewFunctor +{ +public: + LLOpenFoldersWithSelection() {} + virtual ~LLOpenFoldersWithSelection() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); +}; + // Flags for buildContextMenu() const U32 SUPPRESS_OPEN_ITEM = 0x1; const U32 FIRST_SELECTED_ITEM = 0x2; diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 0a3c03e868..6e60ec5e1a 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -2529,7 +2529,7 @@ LLFolderViewItem* LLFolderViewFolder::getPreviousFromChild( LLFolderViewItem* it return result; } -bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) +bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) const { // ignore sort order for landmarks in the Favorites folder. // they should be always sorted as in Favorites bar. See EXT-719 diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 7bcc9dd0a2..9e024d7eea 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -475,6 +475,11 @@ public: LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse); void gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items); + +public: + //WARNING: do not call directly...use the appropriate LLFolderViewModel-derived class instead + template void sortFolders(SORT_FUNC& func) { mFolders.sort(func); } + template void sortItems(SORT_FUNC& func) { mItems.sort(func); } }; diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index b81a81f837..9bbd7f48cf 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -56,7 +56,7 @@ class LLFolderViewFolder; class LLFolderViewFilter { public: - enum EFilterBehavior + enum EFilterModified { FILTER_NONE, // nothing to do, already filtered FILTER_RESTART, // restart filtering from scratch @@ -78,7 +78,7 @@ public: virtual bool checkFolder(const LLUUID& folder_id) const = 0; virtual void setEmptyLookupMessage(const std::string& message) = 0; - const virtual std::string& getEmptyLookupMessage() const = 0; + virtual std::string getEmptyLookupMessage() const = 0; virtual bool showAllResults() const = 0; @@ -87,12 +87,11 @@ public: // +-------------------------------------------------------------------+ virtual bool isActive() const = 0; virtual bool isModified() const = 0; - virtual bool isModifiedAndClear() = 0; virtual void clearModified() = 0; virtual const std::string& getName() const = 0; virtual const std::string& getFilterText() = 0; //RN: this is public to allow system to externally force a global refilter - virtual void setModified(EFilterBehavior behavior = FILTER_RESTART) = 0; + virtual void setModified(EFilterModified behavior = FILTER_RESTART) = 0; // +-------------------------------------------------------------------+ // + Count @@ -125,6 +124,8 @@ public: virtual void sort(class LLFolderViewFolder*) = 0; virtual void filter(class LLFolderViewFolder*) = 0; + + virtual bool contentsReady() = 0; }; struct LLFolderViewModelCommon : public LLFolderViewModelInterface @@ -230,7 +231,7 @@ protected: template class LLFolderViewModel : public LLFolderViewModelCommon { -protected: +public: LLFolderViewModel() {} virtual ~LLFolderViewModel() {} @@ -239,12 +240,14 @@ protected: typedef FOLDER_TYPE FolderType; typedef FILTER_TYPE FilterType; + virtual SortType& getSorter() { return mSorter; } virtual const SortType& getSorter() const { return mSorter; } virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } - virtual FilterType& getFilter() { return mFilter; } + virtual FilterType& getFilter() { return mFilter; } + virtual const FilterType& getFilter() const { return mFilter; } virtual void setFilter(const FilterType& filter) { mFilter = filter; } -public: + virtual bool contentsReady() { return true; } struct ViewModelCompare { @@ -252,12 +255,12 @@ public: : mSorter(sorter) {} - int operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) + bool operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) { return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); } - int operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) + bool operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) { return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); } @@ -269,8 +272,8 @@ public: { if (needsSort(folder->getViewModelItem())) { - std::sort(folder->getFoldersBegin(), folder->getFoldersEnd(), ViewModelCompare(getSorter())); - std::sort(folder->getItemsBegin(), folder->getItemsEnd(), ViewModelCompare(getSorter())); + folder->sortFolders(ViewModelCompare(getSorter())); + folder->sortItems(ViewModelCompare(getSorter())); folder->getViewModelItem()->setSortVersion(mTargetSortVersion); folder->requestArrange(); } diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index b51bbf7bfe..312b7314a1 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -423,7 +423,7 @@ void LLInvFVBridge::removeBatchNoCheck(std::vector& ba for(i = 0; i < count; ++i) { - bridge = (LLInvFVBridge*)(batch.get(i)); + bridge = (LLInvFVBridge*)(batch[i]); if(!bridge || !bridge->isItemRemovable()) continue; LLViewerInventoryCategory* cat = (LLViewerInventoryCategory*)model->getCategory(bridge->getUUID()); if(cat) @@ -1275,7 +1275,7 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const if (can_list) { - LLFolderViewFolder * object_folderp = mInventoryPanel->getFolderByID(object_id); + LLFolderViewFolder * object_folderp = mInventoryPanel.get() ? mInventoryPanel.get()->getFolderByID(object_id) : NULL; if (object_folderp) { can_list = !object_folderp->isLoading(); @@ -1286,7 +1286,7 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const { // Get outbox id const LLUUID & outbox_id = getInventoryModel()->findCategoryUUIDForType(LLFolderType::FT_OUTBOX, false); - LLFolderViewItem * outbox_itemp = mInventoryPanel->getItemByID(outbox_id); + LLFolderViewItem * outbox_itemp = mInventoryPanel.get() ? mInventoryPanel.get()->getItemByID(outbox_id) : NULL; if (outbox_itemp) { diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 1d25a7a1f9..9c9b04d03d 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -42,6 +42,8 @@ #include "llclipboard.h" #include "lltrans.h" +//TODO RN: fix use of static cast as much as possible + LLFastTimer::DeclareTimer FT_FILTER_CLIPBOARD("Filter Clipboard"); LLInventoryFilter::FilterOps::FilterOps(const Params& p) @@ -62,37 +64,27 @@ LLInventoryFilter::FilterOps::FilterOps(const Params& p) ///---------------------------------------------------------------------------- /// Class LLInventoryFilter ///---------------------------------------------------------------------------- -LLInventoryFilter::LLInventoryFilter(const std::string& name, const Params& p) -: mName(name), - mModified(FALSE), - mNeedTextRebuild(TRUE), +LLInventoryFilter::LLInventoryFilter(const Params& p) +: mFilterModified(FILTER_NONE), mEmptyLookupMessage("InventoryNoMatchingItems"), - mFilterOps(p.filter_ops) + mFilterOps(p.filter_ops), + mOrder(p.sort_order), + mFilterSubString(p.substring), + mLastSuccessGeneration(0), + mLastFailGeneration(S32_MAX), + mFirstSuccessGeneration(0), + mFilterCount(0) { - mOrder = p.sort_order; // This gets overridden by a pref immediately - - mFilterSubString(p.substring); - mLastSuccessGeneration = 0; - mLastFailGeneration = S32_MAX; - getFirstSuccessGeneration = 0; - mFilterCount = 0; mNextFilterGeneration = mLastSuccessGeneration + 1; - mLastLogoff = gSavedPerAccountSettings.getU32("LastLogoff"); - mFilterBehavior = FILTER_NONE; - // copy mFilterOps into mDefaultFilterOps markDefault(); } -LLInventoryFilter::~LLInventoryFilter() -{ -} - -BOOL LLInventoryFilter::check(const LLFolderViewItem* item) +bool LLInventoryFilter::check(const LLFolderViewItem* item) { // Clipboard cut items are *always* filtered so we need this value upfront - const LLFolderViewEventListener* listener = item->getViewModelItem(); + const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); const BOOL passed_clipboard = (listener ? checkAgainstClipboard(listener->getUUID()) : TRUE); // If it's a folder and we're showing all folders, return automatically. @@ -140,7 +132,7 @@ bool LLInventoryFilter::checkFolder(const LLFolderViewFolder* folder) const return false; } - const LLFolderViewModelItemInventory* listener = folder->getViewModelItem(); + const LLFolderViewModelItemInventory* listener = static_cast(folder->getViewModelItem()); if (!listener) { llwarns << "Folder view event listener not found." << llendl; @@ -157,9 +149,9 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const { // when applying a filter, matching folders get their contents downloaded first if (isNotDefault() - && !gInventory.isCategoryComplete(getUUID()))) + && !gInventory.isCategoryComplete(folder_id)) { - LLInventoryModelBackgroundFetch::instance().start(getViewModelItem()->getUUID()); + LLInventoryModelBackgroundFetch::instance().start(folder_id); } // Always check against the clipboard @@ -186,9 +178,9 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const return passed_clipboard; } -BOOL LLInventoryFilter::checkAgainstFilterType(const LLFolderViewItem* item) const +bool LLInventoryFilter::checkAgainstFilterType(const LLFolderViewItem* item) const { - const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); + const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); if (!listener) return FALSE; LLInventoryType::EType object_type = listener->getInventoryType(); @@ -354,9 +346,9 @@ bool LLInventoryFilter::checkAgainstClipboard(const LLUUID& object_id) const return true; } -BOOL LLInventoryFilter::checkAgainstPermissions(const LLFolderViewItem* item) const +bool LLInventoryFilter::checkAgainstPermissions(const LLFolderViewItem* item) const { - const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); + const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); if (!listener) return FALSE; PermissionMask perm = listener->getPermissionMask(); @@ -382,9 +374,9 @@ bool LLInventoryFilter::checkAgainstPermissions(const LLInventoryItem* item) con return (perm & mFilterOps.mPermissions) == mFilterOps.mPermissions; } -BOOL LLInventoryFilter::checkAgainstFilterLinks(const LLFolderViewItem* item) const +bool LLInventoryFilter::checkAgainstFilterLinks(const LLFolderViewItem* item) const { - const LLFolderViewModelItemInventory* listener = item->getViewModelItem(); + const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); if (!listener) return TRUE; const LLUUID object_id = listener->getUUID(); @@ -409,7 +401,7 @@ std::string::size_type LLInventoryFilter::getStringMatchOffset(LLFolderViewIte return mFilterSubString.size() ? item->getName().find(mFilterSubString) : std::string::npos; } -BOOL LLInventoryFilter::isDefault() const +bool LLInventoryFilter::isDefault() const { return !isNotDefault(); } @@ -417,7 +409,7 @@ BOOL LLInventoryFilter::isDefault() const // has user modified default filter params? bool LLInventoryFilter::isNotDefault() const { - bool not_default = FALSE; + S32 not_default = 0; not_default |= (mFilterOps.mFilterObjectTypes != mDefaultFilterOps.mFilterObjectTypes); not_default |= (mFilterOps.mFilterCategoryTypes != mDefaultFilterOps.mFilterCategoryTypes); @@ -430,10 +422,10 @@ bool LLInventoryFilter::isNotDefault() const not_default |= (mFilterOps.mMaxDate != mDefaultFilterOps.mMaxDate); not_default |= (mFilterOps.mHoursAgo != mDefaultFilterOps.mHoursAgo); - return not_default; + return not_default != 0; } -BOOL LLInventoryFilter::isActive() const +bool LLInventoryFilter::isActive() const { return mFilterOps.mFilterObjectTypes != 0xffffffffffffffffULL || mFilterOps.mFilterCategoryTypes != 0xffffffffffffffffULL @@ -447,16 +439,9 @@ BOOL LLInventoryFilter::isActive() const || mFilterOps.mHoursAgo != 0; } -BOOL LLInventoryFilter::isModified() const -{ - return mModified; -} - -BOOL LLInventoryFilter::isModifiedAndClear() +bool LLInventoryFilter::isModified() const { - BOOL ret = mModified; - mModified = FALSE; - return ret; + return mFilterModified != FILTER_NONE; } void LLInventoryFilter::updateFilterTypes(U64 types, U64& current_types) @@ -620,9 +605,10 @@ void LLInventoryFilter::setDateRange(time_t min_date, time_t max_date) void LLInventoryFilter::setDateRangeLastLogoff(BOOL sl) { + static LLCachedControl s_last_logoff(gSavedSettings, "LastLogoff", 0); if (sl && !isSinceLogoff()) { - setDateRange(mLastLogoff, time_max()); + setDateRange(s_last_logoff(), time_max()); setModified(); } if (!sl && isSinceLogoff()) @@ -641,17 +627,18 @@ void LLInventoryFilter::setDateRangeLastLogoff(BOOL sl) } } -BOOL LLInventoryFilter::isSinceLogoff() const +bool LLInventoryFilter::isSinceLogoff() const { - return (mFilterOps.mMinDate == (time_t)mLastLogoff) && + static LLCachedControl s_last_logoff(gSavedSettings, "LastLogoff", 0); + + return (mFilterOps.mMinDate == (time_t)s_last_logoff()) && (mFilterOps.mMaxDate == time_max()) && (mFilterOps.mFilterTypes & FILTERTYPE_DATE); } void LLInventoryFilter::clearModified() { - mModified = FALSE; - mFilterBehavior = FILTER_NONE; + mFilterModified = FILTER_NONE; } void LLInventoryFilter::setHoursAgo(U32 hours) @@ -749,27 +736,26 @@ void LLInventoryFilter::resetDefault() setModified(); } -void LLInventoryFilter::setModified(EFilterBehavior behavior) +void LLInventoryFilter::setModified(EFilterModified behavior) { - mModified = TRUE; - mNeedTextRebuild = TRUE; + mFilterText.clear(); mLastSuccessGeneration = mNextFilterGeneration++; - if (mFilterBehavior == FILTER_NONE) + if (mFilterModified == FILTER_NONE) { - mFilterBehavior = behavior; + mFilterModified = behavior; } - else if (mFilterBehavior != behavior) + else if (mFilterModified != behavior) { // trying to do both less restrictive and more restrictive filter // basically means restart from scratch - mFilterBehavior = FILTER_RESTART; + mFilterModified = FILTER_RESTART; } if (isNotDefault()) { // if not keeping current filter results, update last valid as well - switch(mFilterBehavior) + switch(mFilterModified) { case FILTER_RESTART: mLastFailGeneration = mLastSuccessGeneration; @@ -791,29 +777,29 @@ void LLInventoryFilter::setModified(EFilterBehavior behavior) else { // shortcut disabled filters to show everything immediately - mMinRequiredGeneration = 0; - mMustPassGeneration = S32_MAX; + mLastFailGeneration = 0; + mFirstSuccessGeneration = S32_MAX; } } -BOOL LLInventoryFilter::isFilterObjectTypesWith(LLInventoryType::EType t) const +bool LLInventoryFilter::isFilterObjectTypesWith(LLInventoryType::EType t) const { return mFilterOps.mFilterObjectTypes & (1LL << t); } const std::string& LLInventoryFilter::getFilterText() { - if (!mNeedTextRebuild) + if (!mFilterText.empty()) { return mFilterText; } - mNeedTextRebuild = FALSE; std::string filtered_types; std::string not_filtered_types; BOOL filtered_by_type = FALSE; BOOL filtered_by_all_types = TRUE; S32 num_filter_types = 0; + mFilterText.clear(); if (isFilterObjectTypesWith(LLInventoryType::IT_ANIMATION)) @@ -998,9 +984,26 @@ const std::string& LLInventoryFilter::getFilterText() return mFilterText; } + +LLInventoryFilter& LLInventoryFilter::operator=( const LLInventoryFilter& other ) +{ + setFilterObjectTypes(other.getFilterObjectTypes()); + setDateRange(other.getMinDate(), other.getMaxDate()); + setHoursAgo(other.getHoursAgo()); + setShowFolderState(other.getShowFolderState()); + setFilterPermissions(other.getFilterPermissions()); + setFilterSubString(other.getFilterSubString()); + setSortOrder(other.getSortOrder()); + setDateRangeLastLogoff(other.isSinceLogoff()); + return *this; +} + + void LLInventoryFilter::toParams(Params& params) const - { +{ params.filter_ops.types = getFilterObjectTypes(); + params.filter_ops.category_types = getFilterCategoryTypes(); + params.filter_ops.wearable_types = getFilterWearableTypes(); params.filter_ops.date_range.min_date = getMinDate(); params.filter_ops.date_range.max_date = getMaxDate(); params.filter_ops.hours_ago = getHoursAgo(); @@ -1009,16 +1012,18 @@ void LLInventoryFilter::toParams(Params& params) const params.substring = getFilterSubString(); params.sort_order = getSortOrder(); params.since_logoff = isSinceLogoff(); - } +} -void LLInventoryFilter::fromParams(const Params& data) - { +void LLInventoryFilter::fromParams(const Params& params) +{ if (!params.validateBlock()) { return; } setFilterObjectTypes(params.filter_ops.types); + setFilterCategoryTypes(params.filter_ops.category_types); + setFilterWearableTypes(params.filter_ops.wearable_types); setDateRange(params.filter_ops.date_range.min_date, params.filter_ops.date_range.max_date); setHoursAgo(params.filter_ops.hours_ago); setShowFolderState(params.filter_ops.show_folder_state); @@ -1038,7 +1043,12 @@ U64 LLInventoryFilter::getFilterCategoryTypes() const return mFilterOps.mFilterCategoryTypes; } -BOOL LLInventoryFilter::hasFilterString() const +U64 LLInventoryFilter::getFilterWearableTypes() const +{ + return mFilterOps.mFilterWearableTypes; +} + +bool LLInventoryFilter::hasFilterString() const { return mFilterSubString.size() > 0; } @@ -1073,10 +1083,6 @@ U32 LLInventoryFilter::getSortOrder() const { return mOrder; } -const std::string& LLInventoryFilter::getName() const -{ - return mName; -} void LLInventoryFilter::setFilterCount(S32 count) { @@ -1110,8 +1116,8 @@ void LLInventoryFilter::setEmptyLookupMessage(const std::string& message) mEmptyLookupMessage = message; } -RN: turn this into a param -const std::string& LLInventoryFilter::getEmptyLookupMessage() const +// TODO RN: turn this into a param and move to llfolderviewmodelinterface +std::string LLInventoryFilter::getEmptyLookupMessage() const { LLStringUtil::format_map_t args; args["[SEARCH_TERM]"] = LLURI::escape(getFilterSubStringOrig()); @@ -1127,11 +1133,6 @@ bool LLInventoryFilter::areDateLimitsSet() || mFilterOps.mHoursAgo != 0; } -LLInventoryFilter& LLInventoryFilter::operator=( const LLInventoryFilter& other ) -{ - fromParams(other.toParams()); -} - bool LLInventoryFilter::showAllResults() const { return hasFilterString(); @@ -1139,7 +1140,7 @@ bool LLInventoryFilter::showAllResults() const -bool LLInventoryFilter::FilterOps::DateRange::validateBlock( bool emit_errors /*= true*/ ) +bool LLInventoryFilter::FilterOps::DateRange::validateBlock( bool emit_errors /*= true*/ ) const { bool valid = LLInitParam::Block::validateBlock(emit_errors); if (valid) diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index 746e9a2820..e0c3d7141b 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -144,16 +144,18 @@ public: {} }; - LLInventoryFilter(const std::string& name, const Params& p); - virtual ~LLInventoryFilter(); + LLInventoryFilter(const Params& p = Params()); + LLInventoryFilter(const LLInventoryFilter& other) { *this = other; } + virtual ~LLInventoryFilter() {} // +-------------------------------------------------------------------+ // + Parameters // +-------------------------------------------------------------------+ - void setFilterObjectTypes(U64 types); U64 getFilterObjectTypes() const; U64 getFilterCategoryTypes() const; + U64 getFilterWearableTypes() const; bool isFilterObjectTypesWith(LLInventoryType::EType t) const; + void setFilterObjectTypes(U64 types); void setFilterCategoryTypes(U64 types); void setFilterUUID(const LLUUID &object_id); void setFilterWearableTypes(U64 types); @@ -209,20 +211,19 @@ public: U32 getSortOrder() const; void setEmptyLookupMessage(const std::string& message); - const std::string& getEmptyLookupMessage() const; + std::string getEmptyLookupMessage() const; // +-------------------------------------------------------------------+ // + Status // +-------------------------------------------------------------------+ bool isActive() const; bool isModified() const; - bool isModifiedAndClear(); bool isSinceLogoff() const; void clearModified(); const std::string& getName() const; const std::string& getFilterText(); //RN: this is public to allow system to externally force a global refilter - void setModified(EFilterBehavior behavior = FILTER_RESTART); + void setModified(EFilterModified behavior = FILTER_RESTART); // +-------------------------------------------------------------------+ // + Count @@ -259,15 +260,12 @@ private: bool areDateLimitsSet(); U32 mOrder; - U32 mLastLogoff; - std::string::size_type mSubStringMatchOffset; FilterOps mFilterOps; FilterOps mDefaultFilterOps; std::string mFilterSubString; std::string mFilterSubStringOrig; - const std::string mName; S32 mLastSuccessGeneration; S32 mLastFailGeneration; @@ -275,10 +273,8 @@ private: S32 mNextFilterGeneration; S32 mFilterCount; - EFilterBehavior mFilterBehavior; + EFilterModified mFilterModified; - BOOL mModified; - BOOL mNeedTextRebuild; std::string mFilterText; std::string mEmptyLookupMessage; }; diff --git a/indra/newview/llinventoryfunctions.h b/indra/newview/llinventoryfunctions.h index 5cf9c528b0..c6b1da0417 100644 --- a/indra/newview/llinventoryfunctions.h +++ b/indra/newview/llinventoryfunctions.h @@ -418,21 +418,6 @@ public: class LLFolderViewItem; class LLFolderViewFolder; -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -// Class LLFolderViewFunctor -// -// Simple abstract base class for applying a functor to folders and -// items in a folder view hierarchy. This is suboptimal for algorithms -// that only work folders or only work on items, but I'll worry about -// that later when it's determined to be too slow. -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -class LLFolderViewFunctor -{ -public: - virtual ~LLFolderViewFunctor() {} - virtual void doFolder(LLFolderViewFolder* folder) = 0; - virtual void doItem(LLFolderViewItem* item) = 0; -}; class LLInventoryState { @@ -442,49 +427,6 @@ public: static LLUUID sWearNewClothingTransactionID; // wear all clothing in this transaction }; -class LLSelectFirstFilteredItem : public LLFolderViewFunctor -{ -public: - LLSelectFirstFilteredItem() : mItemSelected(FALSE) {} - virtual ~LLSelectFirstFilteredItem() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); - BOOL wasItemSelected() { return mItemSelected; } -protected: - BOOL mItemSelected; -}; - -class LLOpenFilteredFolders : public LLFolderViewFunctor -{ -public: - LLOpenFilteredFolders() {} - virtual ~LLOpenFilteredFolders() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); -}; - -class LLSaveFolderState : public LLFolderViewFunctor -{ -public: - LLSaveFolderState() : mApply(FALSE) {} - virtual ~LLSaveFolderState() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item) {} - void setApply(BOOL apply); - void clearOpenFolders() { mOpenFolders.clear(); } -protected: - std::set mOpenFolders; - BOOL mApply; -}; - -class LLOpenFoldersWithSelection : public LLFolderViewFunctor -{ -public: - LLOpenFoldersWithSelection() {} - virtual ~LLOpenFoldersWithSelection() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); -}; #endif // LL_LLINVENTORYFUNCTIONS_H diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 401daf6353..e739694fe0 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -76,7 +76,7 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) { LLFastTimer _(FTM_INVENTORY_SORT); - if (!needsSort(folder)) return; + if (!needsSort(folder->getViewModelItem())) return; LLFolderViewModelItemInventory* modelp = static_cast(folder->getViewModelItem()); if (modelp->getUUID().isNull()) return; @@ -91,7 +91,7 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) if (child_folderp->getFoldersCount() > 0) { time_t most_recent_folder_time = - static_cast(child_folderp->getFoldersBegin()->getViewModelItem())->getCreationDate(); + static_cast((*child_folderp->getFoldersBegin())->getViewModelItem())->getCreationDate(); LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getViewModelItem()); if (most_recent_folder_time > modelp->getCreationDate()) { @@ -101,7 +101,7 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) if (child_folderp->getItemsCount() > 0) { time_t most_recent_item_time = - static_cast(child_folderp->getItemsBegin()->getViewModelItem())->getCreationDate(); + static_cast((*child_folderp->getItemsBegin())->getViewModelItem())->getCreationDate(); LLFolderViewModelItemInventory* modelp = static_cast(child_folderp->getViewModelItem()); if (most_recent_item_time > modelp->getCreationDate()) @@ -113,6 +113,12 @@ void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) base_t::sort(folder); } +bool LLFolderViewModelInventory::contentsReady() +{ + return !LLInventoryModelBackgroundFetch::instance().folderFetchActive(); +} + + //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLInventoryPanelObserver // @@ -243,6 +249,7 @@ void LLInventoryPanel::buildFolderView(const LLInventoryPanel::Params& params) root_id); mFolderRoot = createFolderView(new_listener, params.use_label_suffix()); + addItemID(root_id, mFolderRoot); } void LLInventoryPanel::initFromParams(const LLInventoryPanel::Params& params) @@ -314,11 +321,11 @@ void LLInventoryPanel::initFromParams(const LLInventoryPanel::Params& params) LLInventoryPanel::~LLInventoryPanel() { - U32 sort_order = getViewModel()->getSortOrder(); - if (mSortOrderSetting != INHERIT_SORT_ORDER) - { - gSavedSettings.setU32(mSortOrderSetting, sort_order); - } + U32 sort_order = getFolderViewModel()->getSorter().getSortOrder(); + if (mSortOrderSetting != INHERIT_SORT_ORDER) + { + gSavedSettings.setU32(mSortOrderSetting, sort_order); + } gIdleCallbacks.deleteFunction(onIdle, this); @@ -346,14 +353,9 @@ void LLInventoryPanel::draw() LLPanel::draw(); } -LLInventoryFilter* LLInventoryPanel::getFilter() -{ - return getViewModel()->getFilter(); -} - const LLInventoryFilter* LLInventoryPanel::getFilter() const { - return getViewModel()->getFilter(); + return &getFolderViewModel()->getFilter(); } void LLInventoryPanel::setFilterTypes(U64 types, LLInventoryFilter::EFilterType filter_type) @@ -400,9 +402,9 @@ void LLInventoryPanel::setSortOrder(U32 order) { LLInventorySort sorter(order); getFilter()->setSortOrder(order); - if (order != getViewModel()->getSortOrder()) + if (order != getFolderViewModel()->getSorter().getSortOrder()) { - getViewModel()->setSorter(LLInventorySort(order)); + getFolderViewModel()->setSorter(LLInventorySort(order)); // try to keep selection onscreen, even if it wasn't to start with mFolderRoot->scrollToShowSelection(); } @@ -410,7 +412,7 @@ void LLInventoryPanel::setSortOrder(U32 order) U32 LLInventoryPanel::getSortOrder() const { - return getViewModel()->getSortOrder(); + return getFolderViewModel()->getSorter().getSortOrder(); } void LLInventoryPanel::setSinceLogoff(BOOL sl) @@ -460,6 +462,8 @@ void LLInventoryPanel::modelChanged(U32 mask) const LLUUID& item_id = (*items_iter); const LLInventoryObject* model_item = model->getObject(item_id); LLFolderViewItem* view_item = getItemByID(item_id); + LLFolderViewModelItemInventory* viewmodel_item = + static_cast(view_item ? view_item->getViewModelItem() : NULL); // LLFolderViewFolder is derived from LLFolderViewItem so dynamic_cast from item // to folder is the fast way to get a folder without searching through folders tree. @@ -493,9 +497,11 @@ void LLInventoryPanel::modelChanged(U32 mask) if (model_item && view_item) { view_item->destroyView(); - removeItemID(view_item->getViewModelItem()->getUUID()); + removeItemID(viewmodel_item->getUUID()); } view_item = buildNewViews(item_id); + viewmodel_item = + static_cast(view_item ? view_item->getViewModelItem() : NULL); view_folder = dynamic_cast(view_item); } @@ -563,14 +569,14 @@ void LLInventoryPanel::modelChanged(U32 mask) // Item is to be moved and we found its new parent in the panel's directory, so move the item's UI. view_item->getParentFolder()->extractItem(view_item); view_item->addToFolder(new_parent); - addItemID(view_item->getViewModelItem()->getUUID(), view_item); + addItemID(viewmodel_item->getUUID(), view_item); } else { // Item is to be moved outside the panel's directory (e.g. moved to trash for a panel that // doesn't include trash). Just remove the item's UI. view_item->destroyView(); - removeItemID(view_item->getViewModelItem()->getUUID()); + removeItemID(viewmodel_item->getUUID()); } } } @@ -583,7 +589,7 @@ void LLInventoryPanel::modelChanged(U32 mask) { // Remove the item's UI. view_item->destroyView(); - removeItemID(view_item->getViewModelItem()->getUUID()); + removeItemID(viewmodel_item->getUUID()); } } } @@ -613,16 +619,11 @@ void LLInventoryPanel::onIdle(void *userdata) } } -const LLUUID& LLInventoryPanel::getRootFolderID() const -{ - return mFolderRoot->getViewModelItem()->getUUID(); -} - void LLInventoryPanel::initializeViews() { if (!gInventory.isInventoryUsable()) return; - rebuildViewsFor(getRootFolderID()); + rebuildViewsFor(gInventory.getRootFolderID()); mViewsInitialized = true; @@ -654,7 +655,7 @@ LLFolderViewItem* LLInventoryPanel::rebuildViewsFor(const LLUUID& id) if (old_view) { old_view->destroyView(); - removeItemID(old_view->getViewModelItem()->getUUID()); + removeItemID(static_cast(old_view->getViewModelItem())->getUUID()); } return buildNewViews(id); @@ -727,75 +728,65 @@ LLFolderViewItem * LLInventoryPanel::createFolderViewItem(LLInvFVBridge * bridge LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) { LLInventoryObject const* objectp = gInventory.getObject(id); - LLUUID root_id = mFolderRoot->getViewModelItem()->getUUID(); - LLFolderViewFolder* parent_folder = NULL; - LLFolderViewItem* itemp = NULL; - if (id == root_id) - { - parent_folder = mFolderRoot; - } - else if (objectp) - { - const LLUUID &parent_id = objectp->getParentUUID(); - parent_folder = (LLFolderViewFolder*)getItemByID(parent_id); - - if (parent_folder) + if (!objectp) return NULL; + + LLFolderViewItem* folder_view_item = getItemByID(id); + LLFolderViewFolder* parent_folder = folder_view_item->getParentFolder(); + + if (!folder_view_item && parent_folder) + { + if (objectp->getType() <= LLAssetType::AT_NONE || + objectp->getType() >= LLAssetType::AT_COUNT) { - if (objectp->getType() <= LLAssetType::AT_NONE || - objectp->getType() >= LLAssetType::AT_COUNT) - { - llwarns << "LLInventoryPanel::buildNewViews called with invalid objectp->mType : " - << ((S32) objectp->getType()) << " name " << objectp->getName() << " UUID " << objectp->getUUID() - << llendl; - return NULL; - } + llwarns << "LLInventoryPanel::buildNewViews called with invalid objectp->mType : " + << ((S32) objectp->getType()) << " name " << objectp->getName() << " UUID " << objectp->getUUID() + << llendl; + return NULL; + } - if ((objectp->getType() == LLAssetType::AT_CATEGORY) && - (objectp->getActualType() != LLAssetType::AT_LINK_FOLDER)) + if ((objectp->getType() == LLAssetType::AT_CATEGORY) && + (objectp->getActualType() != LLAssetType::AT_LINK_FOLDER)) + { + LLInvFVBridge* new_listener = mInvFVBridgeBuilder->createBridge(objectp->getType(), + objectp->getType(), + LLInventoryType::IT_CATEGORY, + this, + mFolderRoot, + objectp->getUUID()); + if (new_listener) { - LLInvFVBridge* new_listener = mInvFVBridgeBuilder->createBridge(objectp->getType(), - objectp->getType(), - LLInventoryType::IT_CATEGORY, - this, - mFolderRoot, - objectp->getUUID()); - if (new_listener) - { - itemp = createFolderViewFolder(new_listener); - } + folder_view_item = createFolderViewFolder(new_listener); } - else - { - // Build new view for item. - LLInventoryItem* item = (LLInventoryItem*)objectp; - LLInvFVBridge* new_listener = mInvFVBridgeBuilder->createBridge(item->getType(), - item->getActualType(), - item->getInventoryType(), - this, - mFolderRoot, - item->getUUID(), - item->getFlags()); + } + else + { + // Build new view for item. + LLInventoryItem* item = (LLInventoryItem*)objectp; + LLInvFVBridge* new_listener = mInvFVBridgeBuilder->createBridge(item->getType(), + item->getActualType(), + item->getInventoryType(), + this, + mFolderRoot, + item->getUUID(), + item->getFlags()); - if (new_listener) - { - itemp = createFolderViewItem(new_listener); - } + if (new_listener) + { + folder_view_item = createFolderViewItem(new_listener); } + } - if (itemp) - { - itemp->addToFolder(parent_folder); - addItemID(itemp->getViewModelItem()->getUUID(), itemp); - } - } + if (folder_view_item) + { + folder_view_item->addToFolder(parent_folder); + addItemID(id, folder_view_item); + } } // If this is a folder, add the children of the folder and recursively add any // child folders. - if (id.isNull() - || (objectp - && objectp->getType() == LLAssetType::AT_CATEGORY)) + if (folder_view_item && objectp->getType() == LLAssetType::AT_CATEGORY) { LLViewerInventoryCategory::cat_array_t* categories; LLViewerInventoryItem::item_array_t* items; @@ -812,7 +803,7 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) } } - if(items && parent_folder) + if(items) { for (LLViewerInventoryItem::item_array_t::const_iterator item_iter = items->begin(); item_iter != items->end(); @@ -825,7 +816,7 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) mInventory->unlockDirectDescendentArrays(id); } - return itemp; + return folder_view_item; } // bit of a hack to make sure the inventory is open. @@ -837,7 +828,7 @@ void LLInventoryPanel::openStartFolderOrMyInventory() LLFolderViewFolder *fchild = dynamic_cast(child); if (fchild && fchild->getViewModelItem() - && fchild->getViewModelItem()->getUUID() == gInventory.getRootFolderID()) + && fchild->getViewModelItem()->getName() == "My Inventory") { fchild->setOpen(TRUE); break; @@ -980,7 +971,7 @@ void LLInventoryPanel::onSelectionChange(const std::deque& it mCompletionObserver->reset(); for (std::deque::const_iterator it = items.begin(); it != items.end(); ++it) { - LLUUID id = (*it)->getViewModelItem()->getUUID(); + LLUUID id = static_cast((*it)->getViewModelItem())->getUUID(); LLViewerInventoryItem* inv_item = mInventory->getItem(id); if (inv_item && !inv_item->isFinished()) @@ -1028,7 +1019,7 @@ bool LLInventoryPanel::beginIMSession() if(folder_item) { - LLFolderViewEventListener* fve_listener = folder_item->getViewModelItem(); + LLFolderViewModelItemInventory* fve_listener = static_cast(folder_item->getViewModelItem()); if (fve_listener && (fve_listener->getInventoryType() == LLInventoryType::IT_CATEGORY)) { @@ -1107,13 +1098,13 @@ bool LLInventoryPanel::beginIMSession() bool LLInventoryPanel::attachObject(const LLSD& userdata) { // Copy selected item UUIDs to a vector. - std::set selected_items = mFolderRoot->getSelectionList(); + std::set selected_items = mFolderRoot->getSelectionList(); uuid_vec_t items; - for (std::set::const_iterator set_iter = selected_items.begin(); + for (std::set::const_iterator set_iter = selected_items.begin(); set_iter != selected_items.end(); ++set_iter) { - items.push_back((*set_iter)->getItemViewModel()->getUUID()); + items.push_back(static_cast((*set_iter)->getViewModelItem())->getUUID()); } // Attach selected items. @@ -1292,10 +1283,6 @@ LLFastTimer::DeclareTimer FTM_GET_ITEM_BY_ID("Get FolderViewItem by ID"); LLFolderViewItem* LLInventoryPanel::getItemByID(const LLUUID& id) { LLFastTimer _(FTM_GET_ITEM_BY_ID); - if (id == mFolderRoot->getViewModelItem()->getUUID()) - { - return mFolderRoot; - } std::map::iterator map_it; map_it = mItemMap.find(id); diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 467c508aa0..cd32b18779 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -66,22 +66,21 @@ public: class LLInventorySort { public: - LLInventorySort(U32 order) - : mSortOrder(0), + LLInventorySort(U32 order = 0) + : mSortOrder(order), mByDate(false), mSystemToTop(false), mFoldersByName(false) { - mSortOrder = order; mByDate = (order & LLInventoryFilter::SO_DATE); mSystemToTop = (order & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); mFoldersByName = (order & LLInventoryFilter::SO_FOLDERS_BY_NAME); } - bool isByDate() { return mByDate; } - U32 getSortOrder() { return mSortOrder; } + bool isByDate() const { return mByDate; } + U32 getSortOrder() const { return mSortOrder; } - bool operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b); + bool operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) const; private: U32 mSortOrder; bool mByDate; @@ -92,12 +91,16 @@ private: class LLFolderViewModelInventory : public LLFolderViewModel { +public: typedef LLFolderViewModel base_t; virtual ~LLFolderViewModelInventory() {} void sort(LLFolderViewFolder* folder); void requestSort(LLFolderViewFolder* folder); + + bool contentsReady(); + }; @@ -234,7 +237,7 @@ public: void updateSelection(); LLFolderViewModelInventory* getFolderViewModel() { return &mViewModel; } - const LLFolderViewModelInventory* getFolderViewModel() const { return &mViewModel; } + const LLFolderViewModelInventory* getFolderViewModel() const { return &mViewModel; } protected: void openStartFolderOrMyInventory(); // open the first level of inventory @@ -287,8 +290,7 @@ public: void addHideFolderType(LLFolderType::EType folder_type); public: - BOOL getIsViewsInitialized() const { return mViewsInitialized; } - const LLUUID& getRootFolderID() const; + BOOL getIsViewsInitialized() const { return mViewsInitialized; } protected: // Builds the UI. Call this once the inventory is usable. void initializeViews(); diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 240c5b2da4..ae68b5ce95 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1542,7 +1542,7 @@ void LLPanelObjectInventory::reset() p.folder_indentation = -14; // subtract space normally reserved for folder expanders mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" - RN: make this happen by manipulating filter object directly + //TODO RN: make this happen by manipulating filter object directly //mFolders->getFilter()->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); diff --git a/indra/newview/llsidepanelinventory.h b/indra/newview/llsidepanelinventory.h index 6aa349f0f3..e8b2808d4f 100644 --- a/indra/newview/llsidepanelinventory.h +++ b/indra/newview/llsidepanelinventory.h @@ -63,8 +63,7 @@ public: BOOL isMainInventoryPanelActive() const; void clearSelections(bool clearMain, bool clearInbox); - std::set getInboxSelectionList(); - std::set getInboxSelectionList(); + std::set getInboxSelectionList(); void showItemInfoPanel(); void showTaskInfoPanel(); -- cgit v1.3 From 9e49fb558f894a1960d208114b8c051536f58c9e Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Tue, 19 Jun 2012 22:36:12 -0700 Subject: CHUI-101 WIP Make LLFolderview general purpose added more casts to LLFolderViewModelItemInventory, etc. to fix compile errors --- indra/newview/llavataractions.cpp | 4 +- indra/newview/llinventorybridge.cpp | 42 +++------- indra/newview/llinventorybridge.h | 11 +-- indra/newview/llinventorypanel.cpp | 6 ++ indra/newview/llinventorypanel.h | 1 + indra/newview/llpanellandmarks.cpp | 94 +++++++++++----------- indra/newview/llpanellandmarks.h | 2 + indra/newview/llpanelmaininventory.cpp | 6 +- indra/newview/llpanelmarketplaceinbox.cpp | 8 +- indra/newview/llpanelmarketplaceinboxinventory.cpp | 2 +- indra/newview/llpanelobjectinventory.cpp | 21 +++-- indra/newview/lltexturectrl.cpp | 2 +- 12 files changed, 103 insertions(+), 96 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index 68dc7681cc..b154dd458c 100755 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -733,7 +733,7 @@ std::set LLAvatarActions::getInventorySelectedUUIDs() it != end_it; ++it) { - inventory_selected_uuids.insert((*it)->getListener()->getUUID()); + inventory_selected_uuids.insert(static_cast((*it)->getViewModelItem())->getUUID()); } return inventory_selected_uuids; } @@ -778,7 +778,7 @@ bool LLAvatarActions::canShareSelectedItems(LLInventoryPanel* inv_panel /* = NUL const std::set::const_iterator it_end = inventory_selected.end(); for (; it != it_end; ++it) { - LLViewerInventoryCategory* inv_cat = gInventory.getCategory((*it)->getItemViewModel()->getUUID()); + LLViewerInventoryCategory* inv_cat = gInventory.getCategory(static_cast((*it)->getViewModelItem())->getUUID()); // any category can be offered. if (inv_cat) { diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 312b7314a1..44d0fdd3dd 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -895,7 +895,7 @@ LLInventoryModel* LLInvFVBridge::getInventoryModel() const return panel ? panel->getModel() : NULL; } -LLInventoryFilter* getInventoryFilter() const +LLInventoryFilter* LLInvFVBridge::getInventoryFilter() const { LLInventoryPanel* panel = mInventoryPanel.get(); return panel ? panel->getFilter() : NULL; @@ -1278,7 +1278,7 @@ bool LLInvFVBridge::canListOnMarketplaceNow() const LLFolderViewFolder * object_folderp = mInventoryPanel.get() ? mInventoryPanel.get()->getFolderByID(object_id) : NULL; if (object_folderp) { - can_list = !object_folderp->isLoading(); + can_list = !static_cast(object_folderp->getViewModelItem())->isLoading(); } } @@ -1319,7 +1319,7 @@ LLToolDragAndDrop::ESource LLInvFVBridge::getDragSource() const return LLToolDragAndDrop::SOURCE_LIBRARY; } - return SOURCE_VIEWER; + return LLToolDragAndDrop::SOURCE_VIEWER; } @@ -1534,7 +1534,7 @@ PermissionMask LLItemBridge::getPermissionMask() const return perm_mask; } -void LLItemBridge::buildDisplayName() +void LLItemBridge::buildDisplayName() const { if(getItem()) { @@ -1817,7 +1817,7 @@ void LLFolderBridge::selectItem() LLInventoryModelBackgroundFetch::instance().start(getUUID(), true); } -void LLFolderBridge::buildDisplayName() +void LLFolderBridge::buildDisplayName() const { LLFolderType::EType preferred_type = getPreferredType(); @@ -1845,7 +1845,7 @@ void LLFolderBridge::buildDisplayName() //can not be detected as protected with LLFolderType::lookupIsProtectedType if (accessories || LLFolderType::lookupIsProtectedType(preferred_type)) { - LLTrans::findString(mDisplayName, "InvFolder " + getName()); + LLTrans::findString(mDisplayName, std::string("InvFolder ") + getName(), LLSD()); }; } @@ -1859,7 +1859,7 @@ void LLFolderBridge::update() possibly_has_children = true; } - BOOL loading = (possibly_has_children + bool loading = (possibly_has_children && !up_to_date ); if (loading != mIsLoading) @@ -3415,7 +3415,7 @@ void LLFolderBridge::buildContextMenuOptions(U32 flags, menuentry_vec_t& items // Do not call execute() or done() here as if the folder is here, there's likely no point drilling down // This saves lots of time as buildContextMenu() is called a lot delete fetch; - buildContextMenuFolderOptions(flags); + buildContextMenuFolderOptions(flags, items, disabled_items); } else { @@ -3628,23 +3628,6 @@ void LLFolderBridge::pasteClipboard(void* user_data) if(self) self->pasteFromClipboard(); } -void LLFolderBridge::createNewCategory(void* user_data) -{ - LLFolderBridge* bridge = (LLFolderBridge*)user_data; - if(!bridge) return; - LLInventoryModel* model = bridge->getInventoryModel(); - if(!model) return; - LLUUID id; - id = model->createNewCategory(bridge->getUUID(), - LLFolderType::FT_NONE, - LLStringUtil::null); - model->notifyObservers(); - - // At this point, the bridge has probably been deleted, but the - // view is still there. - panel->setSelection(id, TAKE_FOCUS_YES); -} - void LLFolderBridge::createNewShirt(void* user_data) { LLFolderBridge::createWearable((LLFolderBridge*)user_data, LLWearableType::WT_SHIRT); @@ -3830,9 +3813,10 @@ void LLFolderBridge::dropToFavorites(LLInventoryItem* inv_item) LLPointer cb = new AddFavoriteLandmarkCallback(); LLInventoryPanel* panel = mInventoryPanel.get(); LLFolderViewItem* drag_over_item = panel ? panel->getRootFolder()->getDraggingOverItem() : NULL; - if (drag_over_item && drag_over_item->getViewModelItem()) + LLFolderViewModelItemInventory* view_model = drag_over_item ? static_cast(drag_over_item->getViewModelItem()) : NULL; + if (view_model) { - cb.get()->setTargetLandmarkId(drag_over_item->getViewModelItem()->getUUID()); + cb.get()->setTargetLandmarkId(view_model->getUUID()); } copy_inventory_item( @@ -4032,7 +4016,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, if (itemp) { LLUUID srcItemId = inv_item->getUUID(); - LLUUID destItemId = itemp->getViewModelItem()->getUUID(); + LLUUID destItemId = static_cast(itemp->getViewModelItem())->getUUID(); gInventory.rearrangeFavoriteLandmarks(srcItemId, destItemId); } } @@ -6119,7 +6103,7 @@ void LLLinkFolderBridge::gotoItem() const LLUUID &cat_uuid = getFolderID(); if (!cat_uuid.isNull()) { - LLFolderViewItem *base_folder = mInventoryPanel.get()->getItemByID(cat_uuid) + LLFolderViewItem *base_folder = mInventoryPanel.get()->getItemByID(cat_uuid); if (base_folder) { if (LLInventoryModel* model = getInventoryModel()) diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index bc5ac24c70..d303e8377d 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -176,7 +176,7 @@ protected: mutable std::string mDisplayName; void purgeItem(LLInventoryModel *model, const LLUUID &uuid); - virtual void buildDisplayName(); + virtual void buildDisplayName() const; }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -230,7 +230,7 @@ public: protected: BOOL confirmRemoveItem(const LLSD& notification, const LLSD& response); virtual BOOL isItemPermissive() const; - virtual void buildDisplayName(); + virtual void buildDisplayName() const; }; @@ -249,7 +249,7 @@ public: BOOL dragItemIntoFolder(LLInventoryItem* inv_item, BOOL drop, std::string& tooltip_msg); BOOL dragCategoryIntoFolder(LLInventoryCategory* inv_category, BOOL drop, std::string& tooltip_msg); - virtual void buildDisplayName(); + virtual void buildDisplayName() const; virtual void performAction(LLInventoryModel* model, std::string action); virtual void openItem(); @@ -293,6 +293,8 @@ public: LLViewerInventoryCategory* getCategory() const; LLHandle getHandle() { mHandle.bind(this); return mHandle; } + bool isLoading() { return mIsLoading; } + protected: void buildContextMenuOptions(U32 flags, menuentry_vec_t& items, menuentry_vec_t& disabled_items); void buildContextMenuFolderOptions(U32 flags, menuentry_vec_t& items, menuentry_vec_t& disabled_items); @@ -301,7 +303,6 @@ protected: // Menu callbacks //-------------------------------------------------------------------- static void pasteClipboard(void* user_data); - static void createNewCategory(void* user_data); static void createNewShirt(void* user_data); static void createNewPants(void* user_data); static void createNewShoes(void* user_data); @@ -337,7 +338,7 @@ private: bool mWearables; bool mIsLoading; LLTimer mTimeSinceRequestStart; - std::string mDisplayName; + mutable std::string mDisplayName; LLRootHandle mHandle; }; diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index e739694fe0..d3f6474392 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -600,6 +600,11 @@ LLFolderView* LLInventoryPanel::getRootFolder() return mFolderRoot; } +LLUUID LLInventoryPanel::getRootFolderID() +{ + return static_cast(mFolderRoot->getViewModelItem())->getUUID(); +} + // static void LLInventoryPanel::onIdle(void *userdata) @@ -1146,6 +1151,7 @@ LLInventoryPanel* LLInventoryPanel::getActiveInventoryPanel(BOOL auto_open) if (!floater_inventory) { llwarns << "Could not find My Inventory floater" << llendl; + return FALSE; } diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index cd32b18779..2aa05e1b61 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -203,6 +203,7 @@ public: // This method is called when something has changed about the inventory. void modelChanged(U32 mask); LLFolderView* getRootFolder(); + LLUUID getRootFolderID(); LLScrollContainer* getScrollableContainer() { return mScroller; } void onSelectionChange(const std::deque &items, BOOL user_action); diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 54ad2bcb76..901c6379de 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -138,7 +138,7 @@ private: // virtual void LLOpenFolderByID::doFolder(LLFolderViewFolder* folder) { - if (folder->getViewModelItem() && folder->getViewModelItem()->getUUID() == mFolderID) + if (folder->getViewModelItem() && static_cast(folder->getViewModelItem())->getUUID() == mFolderID) { if (!folder->isOpen()) { @@ -281,28 +281,21 @@ void LLLandmarksPanel::onShowOnMap() //virtual void LLLandmarksPanel::onShowProfile() { - LLFolderViewItem* cur_item = getCurSelectedItem(); + LLFolderViewModelItemInventory* cur_item = getCurSelectedViewModelItem(); if(!cur_item) return; - cur_item->getViewModelItem()->performAction(mCurrentSelectedList->getModel(),"about"); + cur_item->performAction(mCurrentSelectedList->getModel(),"about"); } // virtual void LLLandmarksPanel::onTeleport() { - LLFolderViewItem* current_item = getCurSelectedItem(); - if (!current_item) - { - llwarns << "There are no selected list. No actions are performed." << llendl; - return; - } - - LLFolderViewModelItem* listenerp = current_item->getViewModelItem(); - if (listenerp && listenerp->getInventoryType() == LLInventoryType::IT_LANDMARK) + LLFolderViewModelItemInventory* view_model_item = getCurSelectedViewModelItem(); + if (view_model_item && view_model_item->getInventoryType() == LLInventoryType::IT_LANDMARK) { - listenerp->openItem(); + view_model_item->openItem(); } } @@ -360,7 +353,7 @@ void LLLandmarksPanel::onSelectorButtonClicked() LLFolderViewItem* cur_item = mFavoritesInventoryPanel->getRootFolder()->getCurSelectedItem(); if (!cur_item) return; - LLFolderViewModelItem* listenerp = cur_item->getViewModelItem(); + LLFolderViewModelItemInventory* listenerp = static_cast(cur_item->getViewModelItem()); if (listenerp->getInventoryType() == LLInventoryType::IT_LANDMARK) { LLSD key; @@ -417,8 +410,9 @@ void LLLandmarksPanel::setItemSelected(const LLUUID& obj_id, BOOL take_keyboard_ bool LLLandmarksPanel::isLandmarkSelected() const { - LLFolderViewItem* current_item = getCurSelectedItem(); - if(current_item && current_item->getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) + LLFolderViewModelItemInventory* current_item = getCurSelectedViewModelItem(); + + if(current_item && current_item->getInventoryType() == LLInventoryType::IT_LANDMARK) { return true; } @@ -440,10 +434,10 @@ bool LLLandmarksPanel::isReceivedFolderSelected() const void LLLandmarksPanel::doActionOnCurSelectedLandmark(LLLandmarkList::loaded_callback_t cb) { - LLFolderViewItem* cur_item = getCurSelectedItem(); - if(cur_item && cur_item->getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) + LLFolderViewModelItemInventory* cur_item = getCurSelectedViewModelItem(); + if(cur_item && cur_item->getInventoryType() == LLInventoryType::IT_LANDMARK) { - LLLandmark* landmark = LLLandmarkActions::getLandmark(cur_item->getViewModelItem()->getUUID(), cb); + LLLandmark* landmark = LLLandmarkActions::getLandmark(cur_item->getUUID(), cb); if (landmark) { cb(landmark); @@ -456,6 +450,17 @@ LLFolderViewItem* LLLandmarksPanel::getCurSelectedItem() const return mCurrentSelectedList ? mCurrentSelectedList->getRootFolder()->getCurSelectedItem() : NULL; } +LLFolderViewModelItemInventory* LLLandmarksPanel::getCurSelectedViewModelItem() const +{ + LLFolderViewItem* cur_item = getCurSelectedItem(); + if (cur_item) + { + return static_cast(cur_item->getViewModelItem()); + } + return NULL; +} + + LLFolderViewItem* LLLandmarksPanel::selectItemInAccordionTab(LLPlacesInventoryPanel* inventory_list, const std::string& tab_name, const LLUUID& obj_id, @@ -508,12 +513,12 @@ void LLLandmarksPanel::processParcelInfo(const LLParcelData& parcel_data) // We have to make request to sever to get parcel_id and snaption_id. if(isLandmarkSelected()) { - LLFolderViewItem* cur_item = getCurSelectedItem(); + LLFolderViewModelItemInventory* cur_item = getCurSelectedViewModelItem(); if (!cur_item) return; - LLUUID id = cur_item->getViewModelItem()->getUUID(); + LLUUID id = cur_item->getUUID(); LLInventoryItem* inv_item = mCurrentSelectedList->getModel()->getItem(id); doActionOnCurSelectedLandmark(boost::bind( - &LLLandmarksPanel::doProcessParcelInfo, this, _1, cur_item, inv_item, parcel_data)); + &LLLandmarksPanel::doProcessParcelInfo, this, _1, getCurSelectedItem(), inv_item, parcel_data)); } } @@ -646,7 +651,7 @@ void LLLandmarksPanel::onAccordionExpandedCollapsed(const LLSD& param, LLPlacesI // Start background fetch, mostly for My Inventory and Library if (expanded) { - const LLUUID &cat_id = inventory_list->getRootFolderID(); + const LLUUID &cat_id = mCurrentSelectedList->getRootFolderID(); // Just because the category itself has been fetched, doesn't mean its child folders have. /* if (!gInventory.isCategoryComplete(cat_id)) @@ -731,14 +736,9 @@ void LLLandmarksPanel::onActionsButtonClick() { LLToggleableMenu* menu = mGearFolderMenu; - LLFolderViewItem* cur_item = NULL; if(mCurrentSelectedList) { - cur_item = mCurrentSelectedList->getRootFolder()->getCurSelectedItem(); - if(!cur_item) - return; - - LLFolderViewModelItem* listenerp = cur_item->getViewModelItem(); + LLFolderViewModelItemInventory* listenerp = getCurSelectedViewModelItem(); if(!listenerp) return; @@ -776,6 +776,9 @@ void LLLandmarksPanel::onTrashButtonClick() const void LLLandmarksPanel::onAddAction(const LLSD& userdata) const { + LLFolderViewModelItemInventory* view_model = getCurSelectedViewModelItem(); + LLFolderViewItem* item = getCurSelectedItem(); + std::string command_name = userdata.asString(); if("add_landmark" == command_name) { @@ -791,21 +794,21 @@ void LLLandmarksPanel::onAddAction(const LLSD& userdata) const } else if ("category" == command_name) { - LLFolderViewItem* item = getCurSelectedItem(); if (item && mCurrentSelectedList == mLandmarksInventoryPanel) { LLFolderViewModelItem* folder_bridge = NULL; - if (item-> getViewModelItem()->getInventoryType() + + if (view_model->getInventoryType() == LLInventoryType::IT_LANDMARK) { // for a landmark get parent folder bridge folder_bridge = item->getParentFolder()->getViewModelItem(); } - else if (item-> getViewModelItem()->getInventoryType() + else if (view_model->getInventoryType() == LLInventoryType::IT_CATEGORY) { // for a folder get its own bridge - folder_bridge = item->getViewModelItem(); + folder_bridge = view_model; } menu_create_inventory_item(mCurrentSelectedList, @@ -834,9 +837,9 @@ void LLLandmarksPanel::onClipboardAction(const LLSD& userdata) const std::string command_name = userdata.asString(); if("copy_slurl" == command_name) { - LLFolderViewItem* cur_item = getCurSelectedItem(); + LLFolderViewModelItemInventory* cur_item = getCurSelectedViewModelItem(); if(cur_item) - LLLandmarkActions::copySLURLtoClipboard(cur_item->getViewModelItem()->getUUID()); + LLLandmarkActions::copySLURLtoClipboard(cur_item->getUUID()); } else if ( "paste" == command_name) { @@ -984,11 +987,6 @@ bool LLLandmarksPanel::isActionEnabled(const LLSD& userdata) const { LLFolderViewItem* item = *iter; - // If no item is found it might be a folder id. - if (!item) - { - item = root_folder_view->getFolderByID(*iter); - } if (!item) return false; if (!canItemBeModified(command_name, item)) return false; @@ -1012,10 +1010,10 @@ bool LLLandmarksPanel::isActionEnabled(const LLSD& userdata) const if ("show_on_map" == command_name) { - LLFolderViewItem* cur_item = root_folder_view->getCurSelectedItem(); + LLFolderViewModelItemInventory* cur_item = getCurSelectedViewModelItem(); if (!cur_item) return false; - LLViewerInventoryItem* inv_item = static_cast(static_cast(cur_item->getViewModelItem())->getInventoryObject()); + LLViewerInventoryItem* inv_item = dynamic_cast(cur_item->getInventoryObject()); if (!inv_item) return false; LLUUID asset_uuid = inv_item->getAssetUUID(); @@ -1105,23 +1103,23 @@ void LLLandmarksPanel::onMenuVisibilityChange(LLUICtrl* ctrl, const LLSD& param) { const LLUUID trash_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH); - std::set selected_uuids = root_folder_view->getSelectionList(); + std::set selected_items = root_folder_view->getSelectionList(); // Iterate through selected items to find out if any of these items are in Trash // or all the items are in Trash category. - for (std::set::const_iterator iter = selected_uuids.begin(); iter != selected_uuids.end(); ++iter) + for (std::set::const_iterator iter = selected_items.begin(); iter != selected_items.end(); ++iter) { LLFolderViewItem* item = *iter; // If no item is found it might be a folder id. if (!item) continue; - LLFolderViewModelItem* listenerp = item->getViewModelItem(); + LLFolderViewModelItemInventory* listenerp = static_cast(item->getViewModelItem()); if(!listenerp) continue; // Trash category itself should not be included because it can't be // actually restored from trash. - are_all_items_in_trash &= listenerp->isItemInTrash() && (*iter)->getItemViewModel()->getUUID() != trash_id; + are_all_items_in_trash &= listenerp->isItemInTrash() && listenerp->getUUID() != trash_id; // If there are any selected items in Trash including the Trash category itself // we show "Restore Item" in context menu and hide other irrelevant items. @@ -1160,7 +1158,7 @@ bool LLLandmarksPanel::canItemBeModified(const std::string& command_name, LLFold bool can_be_modified = false; // landmarks can be modified in any other accordion... - if (item->getViewModelItem()->getInventoryType() == LLInventoryType::IT_LANDMARK) + if (static_cast(item->getViewModelItem())->getInventoryType() == LLInventoryType::IT_LANDMARK) { can_be_modified = true; @@ -1198,7 +1196,7 @@ bool LLLandmarksPanel::canItemBeModified(const std::string& command_name, LLFold if (can_be_modified) { - LLFolderViewModelItemInventory* listenerp = item->getViewModelItem(); + LLFolderViewModelItemInventory* listenerp = static_cast(item->getViewModelItem()); if ("cut" == command_name) { diff --git a/indra/newview/llpanellandmarks.h b/indra/newview/llpanellandmarks.h index b2f4e92473..aa5f69739d 100644 --- a/indra/newview/llpanellandmarks.h +++ b/indra/newview/llpanellandmarks.h @@ -44,6 +44,7 @@ class LLMenuGL; class LLToggleableMenu; class LLInventoryPanel; class LLPlacesInventoryPanel; +class LLFolderViewModelItemInventory; class LLLandmarksPanel : public LLPanelPlacesTab, LLRemoteParcelInfoObserver { @@ -87,6 +88,7 @@ protected: bool isReceivedFolderSelected() const; void doActionOnCurSelectedLandmark(LLLandmarkList::loaded_callback_t cb); LLFolderViewItem* getCurSelectedItem() const; + LLFolderViewModelItemInventory* getCurSelectedViewModelItem() const; /** * Selects item with "obj_id" in "inventory_list" and scrolls accordion diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index fbdbce61bd..565a7408c2 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -47,6 +47,7 @@ #include "llresmgr.h" #include "llscrollcontainer.h" #include "llsdserialize.h" +#include "llsdparam.h" #include "llspinctrl.h" #include "lltoggleablemenu.h" #include "lltooldraganddrop.h" @@ -230,7 +231,10 @@ LLPanelMainInventory::~LLPanelMainInventory( void ) if (filter) { LLSD filterState; - filter->toLLSD(filterState); + LLInventoryFilter::Params p; + filter->toParams(p); + LLParamSDParser parser; + parser.writeSD(filterState, p); filterRoot[filter->getName()] = filterState; } diff --git a/indra/newview/llpanelmarketplaceinbox.cpp b/indra/newview/llpanelmarketplaceinbox.cpp index 8a07d6d516..3547156197 100644 --- a/indra/newview/llpanelmarketplaceinbox.cpp +++ b/indra/newview/llpanelmarketplaceinbox.cpp @@ -143,8 +143,8 @@ U32 LLPanelMarketplaceInbox::getFreshItemCount() const if (inbox_folder) { - LLFolderViewFolder::folders_t::iterator folders_it = inbox_folder->getFoldersBegin(); - LLFolderViewFolder::folders_t::iterator folders_end = inbox_folder->getFoldersEnd(); + LLFolderViewFolder::folders_t::const_iterator folders_it = inbox_folder->getFoldersBegin(); + LLFolderViewFolder::folders_t::const_iterator folders_end = inbox_folder->getFoldersEnd(); for (; folders_it != folders_end; ++folders_it) { @@ -157,8 +157,8 @@ U32 LLPanelMarketplaceInbox::getFreshItemCount() const } } - LLFolderViewFolder::items_t::iterator items_it = inbox_folder->getItemsBegin(); - LLFolderViewFolder::items_t::iterator items_end = inbox_folder->getItemsEnd(); + LLFolderViewFolder::items_t::const_iterator items_it = inbox_folder->getItemsBegin(); + LLFolderViewFolder::items_t::const_iterator items_end = inbox_folder->getItemsEnd(); for (; items_it != items_end; ++items_it) { diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index 1d079adfd3..2947be3c2e 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -30,7 +30,7 @@ #include "llfolderview.h" #include "llfolderviewitem.h" -#include "llfoldervieweventlistener.h" +#include "llfolderviewmodel.h" #include "llinventorybridge.h" #include "llinventoryfunctions.h" #include "llpanellandmarks.h" diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index ae68b5ce95..56df01e150 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -109,6 +109,8 @@ public: /*virtual*/ LLFolderType::EType getPreferredType() const { return LLFolderType::FT_NONE; } virtual const LLUUID& getUUID() const { return mUUID; } virtual time_t getCreationDate() const; + virtual void setCreationDate(time_t creation_date_utc); + virtual LLUIImagePtr getIcon() const; virtual void openItem(); virtual BOOL canOpenItem() const { return FALSE; } @@ -130,11 +132,15 @@ public: virtual void buildContextMenu(LLMenuGL& menu, U32 flags); virtual void performAction(LLInventoryModel* model, std::string action); virtual BOOL isUpToDate() const { return TRUE; } - virtual BOOL hasChildren() const { return FALSE; } + virtual bool hasChildren() const { return FALSE; } virtual LLInventoryType::EType getInventoryType() const { return LLInventoryType::IT_NONE; } virtual LLWearableType::EType getWearableType() const { return LLWearableType::WT_NONE; } + virtual EInventorySortGroup getSortGroup() const { return SG_ITEM; } + virtual LLInventoryObject* getInventoryObject() const { return findInvObject(); } + // LLDragAndDropBridge functionality + virtual LLToolDragAndDrop::ESource getDragSource() const { return LLToolDragAndDrop::SOURCE_WORLD; } virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const; virtual BOOL dragOrDrop(MASK mask, BOOL drop, EDragAndDropType cargo_type, @@ -338,6 +344,10 @@ time_t LLTaskInvFVBridge::getCreationDate() const return 0; } +void LLTaskInvFVBridge::setCreationDate(time_t creation_date_utc) +{} + + LLUIImagePtr LLTaskInvFVBridge::getIcon() const { const BOOL item_is_multi = (mFlags & LLInventoryItemFlags::II_FLAGS_OBJECT_HAS_MULTIPLE_ITEMS); @@ -461,7 +471,7 @@ BOOL LLTaskInvFVBridge::removeItem() return FALSE; } -void LLTaskInvFVBridge::removeBatch(LLDynamicArray& batch) +void LLTaskInvFVBridge::removeBatch(std::vector& batch) { if (!mPanel) { @@ -703,7 +713,7 @@ public: virtual BOOL renameItem(const std::string& new_name); virtual BOOL isItemRemovable() const; virtual void buildContextMenu(LLMenuGL& menu, U32 flags); - virtual BOOL hasChildren() const; + virtual bool hasChildren() const; virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const; virtual BOOL dragOrDrop(MASK mask, BOOL drop, EDragAndDropType cargo_type, @@ -711,6 +721,7 @@ public: std::string& tooltip_msg); virtual BOOL canOpenItem() const { return TRUE; } virtual void openItem(); + virtual EInventorySortGroup getSortGroup() const { return SG_NORMAL_FOLDER; } }; LLTaskCategoryBridge::LLTaskCategoryBridge( @@ -761,7 +772,7 @@ void LLTaskCategoryBridge::buildContextMenu(LLMenuGL& menu, U32 flags) hide_context_entries(menu, items, disabled_items); } -BOOL LLTaskCategoryBridge::hasChildren() const +bool LLTaskCategoryBridge::hasChildren() const { // return TRUE if we have or do know know if we have children. // *FIX: For now, return FALSE - we will know for sure soon enough. @@ -1748,7 +1759,7 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li view = LLUICtrlFactory::create (params); } view->addToFolder(folder); - addItemID(view->getViewModelItem()->getUUID(), view); + addItemID(view->getViewModelItem()->getUUID(), view); } } diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index a995f07df7..b7fa283dd2 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -623,7 +623,7 @@ void LLFloaterTexturePicker::draw() LLFolderView* folder_view = mInventoryPanel->getRootFolder(); if (!folder_view) return; - LLInventoryFilter* filter = folder_view->getFilter(); + LLInventoryFilter* filter = static_cast(folder_view->getFilter()); if (!filter) return; bool is_filter_active = folder_view->getCompletedFilterGeneration() < filter->getCurrentGeneration() && -- cgit v1.3 From 3882e9c177190b22276e1ef3fc39e4cb910820fd Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 20 Jun 2012 00:19:05 -0700 Subject: CHUI-101 WIP Make LLFolderview general purpose more compilation fixes, just need to add getName() back to LLInventoryFilter et al --- indra/llinventory/llinventory.cpp | 6 ++++++ indra/newview/llfolderview.cpp | 8 +++++++- indra/newview/llfolderviewitem.cpp | 6 ++++++ indra/newview/llfolderviewitem.h | 4 ++-- indra/newview/llfolderviewmodel.h | 9 --------- indra/newview/llinventorybridge.h | 2 +- indra/newview/llinventoryfilter.h | 1 - indra/newview/llinventorypanel.cpp | 5 +++++ indra/newview/llpanelmaininventory.cpp | 17 ++++++++-------- indra/newview/llpanelmarketplaceinboxinventory.cpp | 23 +++++++++++----------- indra/newview/llpanelobjectinventory.cpp | 1 - indra/newview/llpaneloutfitedit.cpp | 8 ++++---- indra/newview/llplacesinventorypanel.cpp | 2 +- indra/newview/llsidepanelinventory.cpp | 4 ++-- indra/newview/lltexturectrl.cpp | 2 +- indra/newview/llviewerinventory.cpp | 2 +- indra/newview/llviewermessage.cpp | 4 ++-- 17 files changed, 58 insertions(+), 46 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llinventory/llinventory.cpp b/indra/llinventory/llinventory.cpp index 784e20ad46..6e54f9d78a 100644 --- a/indra/llinventory/llinventory.cpp +++ b/indra/llinventory/llinventory.cpp @@ -509,6 +509,12 @@ U32 LLInventoryItem::getFlags() const return mFlags; } +time_t LLInventoryItem::getCreationDate() const +{ + return mCreationDate; +} + + // virtual void LLInventoryItem::packMessage(LLMessageSystem* msg) const { diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index f0edbb638a..78f4bc1119 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -1976,7 +1976,7 @@ void LLFolderView::doIdle() LLFastTimer t3(FTM_AUTO_SELECT); // select new item only if a filtered item not currently selected LLFolderViewItem* selected_itemp = mSelectedItems.empty() ? NULL : mSelectedItems.back(); - if (!mAutoSelectOverride && (!selected_itemp || !selected_itemp->potentiallyFiltered())) + if (!mAutoSelectOverride && (!selected_itemp || !selected_itemp->potentiallyHidden())) { // these are named variables to get around gcc not binding non-const references to rvalues // and functor application is inherently non-const to allow for stateful functors @@ -2293,3 +2293,9 @@ S32 LLFolderView::getItemHeight() } return debug_height; } + +//TODO RN: move to llfolderviewmodel.cpp file +bool LLFolderViewModelCommon::needsSort(LLFolderViewModelItem* item) +{ + return item->getSortVersion() < mTargetSortVersion; +} diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 6e60ec5e1a..5b73a34d29 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -221,6 +221,12 @@ BOOL LLFolderViewItem::potentiallyVisible() || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); // or we don't know yet } +BOOL LLFolderViewItem::potentiallyHidden() +{ + return !mPassedFilter // didn't pass the filter + || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); // or we don't know yet +} + BOOL LLFolderViewItem::getFiltered() { return mPassedFilter && mLastFilterGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 9e024d7eea..1f8c12cf73 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -245,8 +245,8 @@ public: BOOL isDescendantOf( const LLFolderViewFolder* potential_ancestor ); S32 getIndentation() { return mIndentation; } - virtual BOOL potentiallyVisible(); // do we know for a fact that this item won't be displayed? - virtual BOOL potentiallyFiltered(); // do we know for a fact that this item has been filtered out? + virtual BOOL potentiallyVisible(); // is the item definitely visible or we haven't made up our minds yet? + virtual BOOL potentiallyHidden(); // did this item not pass the filter or do we not know yet? virtual BOOL getFiltered(); virtual BOOL getFiltered(S32 filter_generation); diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index 9bbd7f48cf..631e3eec1c 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -88,7 +88,6 @@ public: virtual bool isActive() const = 0; virtual bool isModified() const = 0; virtual void clearModified() = 0; - virtual const std::string& getName() const = 0; virtual const std::string& getFilterText() = 0; //RN: this is public to allow system to externally force a global refilter virtual void setModified(EFilterModified behavior = FILTER_RESTART) = 0; @@ -305,12 +304,4 @@ protected: FilterType mFilter; }; - -bool LLFolderViewModelCommon::needsSort(class LLFolderViewModelItem* item) -{ - return item->getSortVersion() < mTargetSortVersion; -} - - - #endif diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index d303e8377d..111735e198 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -176,7 +176,7 @@ protected: mutable std::string mDisplayName; void purgeItem(LLInventoryModel *model, const LLUUID &uuid); - virtual void buildDisplayName() const; + virtual void buildDisplayName() const {} }; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index e0c3d7141b..175a16c401 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -220,7 +220,6 @@ public: bool isModified() const; bool isSinceLogoff() const; void clearModified(); - const std::string& getName() const; const std::string& getFilterText(); //RN: this is public to allow system to externally force a global refilter void setModified(EFilterModified behavior = FILTER_RESTART); diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index d3f6474392..f6861d83de 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -358,6 +358,11 @@ const LLInventoryFilter* LLInventoryPanel::getFilter() const return &getFolderViewModel()->getFilter(); } +LLInventoryFilter* LLInventoryPanel::getFilter() +{ + return &getFolderViewModel()->getFilter(); +} + void LLInventoryPanel::setFilterTypes(U64 types, LLInventoryFilter::EFilterType filter_type) { if (filter_type == LLInventoryFilter::FILTERTYPE_OBJECT) diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index 565a7408c2..e3446fdb3a 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -981,7 +981,7 @@ void LLPanelMainInventory::saveTexture(const LLSD& userdata) return; } - const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID& item_id = static_cast(current_item->getViewModelItem())->getUUID(); LLPreviewTexture* preview_texture = LLFloaterReg::showTypedInstance("preview_texture", LLSD(item_id), TAKE_FOCUS_YES); if (preview_texture) { @@ -1054,7 +1054,7 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) { return; } - const LLUUID item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID item_id = static_cast(current_item->getViewModelItem())->getUUID(); LLViewerInventoryItem *item = gInventory.getItem(item_id); if (item) { @@ -1069,7 +1069,7 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) { return; } - current_item->getViewModelItem()->performAction(getActivePanel()->getModel(), "goto"); + static_cast(current_item->getViewModelItem())->performAction(getActivePanel()->getModel(), "goto"); } if (command_name == "find_links") @@ -1079,7 +1079,7 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) { return; } - const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID& item_id = static_cast(current_item->getViewModelItem())->getUUID(); const std::string &item_name = current_item->getViewModelItem()->getName(); mFilterSubString = item_name; LLInventoryFilter *filter = mActivePanel->getFilter(); @@ -1125,9 +1125,8 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) iter != selection_set.end(); ++iter) { - const LLUUID &item_id = (*iter); LLFolderViewItem *item = *iter; - const LLFolderViewModelItemInventory *listener = item->getViewModelItem(); + const LLFolderViewModelItemInventory *listener = static_cast(item->getViewModelItem()); llassert(listener); if (!listener) return FALSE; can_delete &= listener->isItemRemovable(); @@ -1145,7 +1144,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) { LLFolderViewItem* current_item = getActivePanel()->getRootFolder()->getCurSelectedItem(); if (!current_item) return FALSE; - const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID& item_id = static_cast(current_item->getViewModelItem())->getUUID(); const LLViewerInventoryItem *item = gInventory.getItem(item_id); if (item && item->getIsLinkType() && !item->getIsBrokenLink()) { @@ -1161,7 +1160,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) if (selection_set.size() != 1) return FALSE; LLFolderViewItem* current_item = root->getCurSelectedItem(); if (!current_item) return FALSE; - const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID& item_id = static_cast(current_item->getViewModelItem())->getUUID(); const LLInventoryObject *obj = gInventory.getObject(item_id); if (obj && !obj->getIsLinkType() && LLAssetType::lookupCanLink(obj->getType())) { @@ -1174,7 +1173,7 @@ BOOL LLPanelMainInventory::isActionEnabled(const LLSD& userdata) { LLFolderViewItem* current_item = getActivePanel()->getRootFolder()->getCurSelectedItem(); if (!current_item) return FALSE; - const LLUUID& item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID& item_id = static_cast(current_item->getViewModelItem())->getUUID(); const LLViewerInventoryItem *item = gInventory.getItem(item_id); if (item && item->getIsBrokenLink()) { diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index 2947be3c2e..d2143783ad 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -208,7 +208,7 @@ void LLInboxFolderViewFolder::computeFreshness() if (last_expansion_utc > 0) { - mFresh = (mCreationDate > last_expansion_utc); + mFresh = (static_cast(getViewModelItem())->getCreationDate() > last_expansion_utc); #if DEBUGGING_FRESHNESS if (mFresh) @@ -230,15 +230,16 @@ void LLInboxFolderViewFolder::deFreshify() gSavedPerAccountSettings.setU32("LastInventoryInboxActivity", time_corrected()); } -void LLInboxFolderViewFolder::setCreationDate(time_t creation_date_utc) -{ - mCreationDate = creation_date_utc; - - if (mParentFolder == mRoot) - { - computeFreshness(); - } -} +// TODO RN: move this behavior to modelview? +//void LLInboxFolderViewFolder::setCreationDate(time_t creation_date_utc) +//{ +// mCreationDate = creation_date_utc; +// +// if (LLFolderViewItem::mParentFolder == mRoot) +// { +// computeFreshness(); +// } +//} // // LLInboxFolderViewItem Implementation @@ -304,7 +305,7 @@ void LLInboxFolderViewItem::computeFreshness() if (last_expansion_utc > 0) { - mFresh = (mCreationDate > last_expansion_utc); + mFresh = (static_cast(getViewModelItem())->getCreationDate() > last_expansion_utc); #if DEBUGGING_FRESHNESS if (mFresh) diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 56df01e150..0ba8c1ce6d 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1759,7 +1759,6 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li view = LLUICtrlFactory::create (params); } view->addToFolder(folder); - addItemID(view->getViewModelItem()->getUUID(), view); } } diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp index a95d27f992..d690a18477 100644 --- a/indra/newview/llpaneloutfitedit.cpp +++ b/indra/newview/llpaneloutfitedit.cpp @@ -891,7 +891,7 @@ LLPanelOutfitEdit::selection_info_t LLPanelOutfitEdit::getAddMorePanelSelectionT if (result.second == 1) { - result.first = getWearableTypeByItemUUID((*selected_items.begin())->getListener()->getUUID()); + result.first = getWearableTypeByItemUUID(static_cast((*selected_items.begin())->getViewModelItem())->getUUID()); } } else if (mWearableItemsList != NULL && mWearableItemsList->getVisible()) @@ -1310,7 +1310,7 @@ void LLPanelOutfitEdit::getCurrentItemUUID(LLUUID& selected_id) LLFolderViewItem* curr_item = mInventoryItemsPanel->getRootFolder()->getCurSelectedItem(); if (!curr_item) return; - LLFolderViewModelItemInventory* listenerp = curr_item->getViewModelItem(); + LLFolderViewModelItemInventory* listenerp = static_cast(curr_item->getViewModelItem()); if (!listenerp) return; selected_id = listenerp->getUUID(); @@ -1332,7 +1332,7 @@ void LLPanelOutfitEdit::getSelectedItemsUUID(uuid_vec_t& uuid_list) it != end_it; ++it) { - uuid_list.push_back((*it)->getItemViewModel()->getUUID()); + uuid_list.push_back(static_cast((*it)->getViewModelItem())->getUUID()); } } else if (mWearablesListViewPanel->getVisible()) @@ -1384,7 +1384,7 @@ void LLPanelOutfitEdit::saveListSelection() for (std::set::const_iterator item_id = selected_ids.begin(); item_id != selected_ids.end(); ++item_id) { - mWearableItemsList->selectItemByUUID((*item_id)->getItemViewModel()->getUUID(), true); + mWearableItemsList->selectItemByUUID(static_cast((*item_id)->getViewModelItem())->getUUID(), true); } mWearableItemsList->scrollToShowFirstSelectedItem(); } diff --git a/indra/newview/llplacesinventorypanel.cpp b/indra/newview/llplacesinventorypanel.cpp index da5ce7d4b7..1c2d75d88c 100644 --- a/indra/newview/llplacesinventorypanel.cpp +++ b/indra/newview/llplacesinventorypanel.cpp @@ -162,7 +162,7 @@ BOOL LLPlacesFolderView::handleRightMouseDown(S32 x, S32 y, MASK mask) // then determine its type and set necessary menu handle if (getCurSelectedItem()) { - LLInventoryType::EType inventory_type = getCurSelectedItem()->getViewModelItem()->getInventoryType(); + LLInventoryType::EType inventory_type = static_cast(getCurSelectedItem()->getViewModelItem())->getInventoryType(); inventory_type_menu_handle_t::iterator it_handle = mMenuHandlesByInventoryType.find(inventory_type); if (it_handle != mMenuHandlesByInventoryType.end()) diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp index f3d32e7a67..47bd620fc6 100644 --- a/indra/newview/llsidepanelinventory.cpp +++ b/indra/newview/llsidepanelinventory.cpp @@ -473,7 +473,7 @@ void LLSidepanelInventory::performActionOnSelection(const std::string &action) } } - current_item->getViewModelItem()->performAction(mPanelMainInventory->getActivePanel()->getModel(), action); + static_cast(current_item->getViewModelItem())->performAction(mPanelMainInventory->getActivePanel()->getModel(), action); } void LLSidepanelInventory::onWearButtonClicked() @@ -663,7 +663,7 @@ LLInventoryItem *LLSidepanelInventory::getSelectedItem() return NULL; } } - const LLUUID &item_id = current_item->getViewModelItem()->getUUID(); + const LLUUID &item_id = static_cast(current_item->getViewModelItem())->getUUID(); LLInventoryItem *item = gInventory.getItem(item_id); return item; } diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index b7fa283dd2..50d63911ad 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -800,7 +800,7 @@ void LLFloaterTexturePicker::onSelectionChange(const std::dequegetViewModelItem()->getUUID()); + LLInventoryItem* itemp = gInventory.getItem(static_cast(first_item->getViewModelItem())->getUUID()); mNoCopyTextureSelected = FALSE; if (itemp) { diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp index d827b2b8aa..749a6d22e0 100644 --- a/indra/newview/llviewerinventory.cpp +++ b/indra/newview/llviewerinventory.cpp @@ -1375,7 +1375,7 @@ void menu_create_inventory_item(LLInventoryPanel* panel, LLFolderBridge *bridge, llwarns << "Can't create unrecognized type " << type_name << llendl; } } - panel->getRoot()->->setNeedsAutoRename(TRUE); + panel->getRootFolder()->setNeedsAutoRename(TRUE); } LLAssetType::EType LLViewerInventoryItem::getType() const diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 90d144b458..b0e36d756d 100755 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -821,7 +821,7 @@ private: it != end_it; ++it) { - mSelectedItems.insert((*it)->getListener()->getUUID()); + mSelectedItems.insert(static_cast((*it)->getViewModelItem())->getUUID()); } } mSelectedItems.erase(mMoveIntoFolderID); @@ -864,7 +864,7 @@ private: it != end_it; ++it) { - selected_items.insert((*it)->getListener()->getUUID()); + selected_items.insert(static_cast((*it)->getViewModelItem())->getUUID()); } selected_items.erase(mMoveIntoFolderID); -- cgit v1.3 From 4775084000233ec9f0770f421771215397b987e7 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Thu, 21 Jun 2012 23:28:24 -0700 Subject: CHUI-101 WIP Make LLFolderview general purpose inventory item labels and icons displaying again --- indra/newview/llfavoritesbar.cpp | 308 ++++++++++++++++++- indra/newview/llfavoritesbar.h | 111 +++++++ indra/newview/llfolderview.cpp | 2 + indra/newview/llfolderview.h | 6 +- indra/newview/llfolderviewitem.cpp | 71 ++--- indra/newview/llfolderviewitem.h | 11 +- indra/newview/llfolderviewmodel.h | 38 ++- indra/newview/llinventorybridge.cpp | 24 +- indra/newview/llinventorybridge.h | 7 +- indra/newview/llinventorymodel.cpp | 61 ---- indra/newview/llinventorymodel.h | 9 - indra/newview/llinventorypanel.cpp | 44 +-- indra/newview/llinventorypanel.h | 2 +- indra/newview/llpanelmarketplaceinboxinventory.cpp | 16 - .../newview/llpanelmarketplaceoutboxinventory.cpp | 16 - indra/newview/llpanelobjectinventory.cpp | 16 +- indra/newview/llviewerinventory.cpp | 341 --------------------- indra/newview/llviewerinventory.h | 17 +- 18 files changed, 512 insertions(+), 588 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llfavoritesbar.cpp b/indra/newview/llfavoritesbar.cpp index 575b613ccf..4a96de942d 100644 --- a/indra/newview/llfavoritesbar.cpp +++ b/indra/newview/llfavoritesbar.cpp @@ -38,6 +38,7 @@ #include "lltooltip.h" #include "llagent.h" +#include "llavatarnamecache.h" #include "llclipboard.h" #include "llclipboard.h" #include "llinventorybridge.h" @@ -45,12 +46,14 @@ #include "llfloatersidepanelcontainer.h" #include "llfloaterworldmap.h" #include "lllandmarkactions.h" +#include "lllogininstance.h" #include "llnotificationsutil.h" #include "lltoggleablemenu.h" #include "llviewerinventory.h" #include "llviewermenu.h" #include "llviewermenu.h" #include "lltooldraganddrop.h" +#include "llsdserialize.h" static LLDefaultChildRegistry::Register r("favorites_bar"); @@ -317,7 +320,8 @@ public: if (item) { - item->setSortField(mSortField); + LLFavoritesOrderStorage::instance().setSortIndex(item, mSortField); + item->setComplete(TRUE); item->updateServer(FALSE); @@ -339,8 +343,8 @@ struct LLFavoritesSort // TODO - made it customizible using gSavedSettings bool operator()(const LLViewerInventoryItem* const& a, const LLViewerInventoryItem* const& b) { - S32 sortField1 = a->getSortField(); - S32 sortField2 = b->getSortField(); + S32 sortField1 = LLFavoritesOrderStorage::instance().getSortIndex(a->getUUID()); + S32 sortField2 = LLFavoritesOrderStorage::instance().getSortIndex(b->getUUID()); if (!(sortField1 < 0 && sortField2 < 0)) { @@ -528,7 +532,7 @@ void LLFavoritesBarCtrl::handleExistingFavoriteDragAndDrop(S32 x, S32 y) mItems.push_back(gInventory.getItem(mDragItemId)); } - gInventory.saveItemsOrder(mItems); + LLFavoritesOrderStorage::instance().saveItemsOrder(mItems); LLToggleableMenu* menu = (LLToggleableMenu*) mOverflowMenuHandle.get(); @@ -587,7 +591,8 @@ void LLFavoritesBarCtrl::handleNewFavoriteDragAndDrop(LLInventoryItem *item, con } else { - currItem->setSortField(++sortField); + LLFavoritesOrderStorage::instance().setSortIndex(currItem, ++sortField); + currItem->setComplete(TRUE); currItem->updateServer(FALSE); @@ -640,7 +645,7 @@ void LLFavoritesBarCtrl::changed(U32 mask) for (LLInventoryModel::item_array_t::iterator i = items.begin(); i != items.end(); ++i) { - (*i)->getSLURL(); + LLFavoritesOrderStorage::instance().getSLURL((*i)->getAssetUUID()); } updateButtons(); } @@ -909,7 +914,7 @@ BOOL LLFavoritesBarCtrl::collectFavoriteItems(LLInventoryModel::item_array_t &it S32 sortField = 0; for (LLInventoryModel::item_array_t::iterator i = items.begin(); i != items.end(); ++i) { - (*i)->setSortField(++sortField); + LLFavoritesOrderStorage::instance().setSortIndex((*i), ++sortField); } } @@ -1355,7 +1360,7 @@ BOOL LLFavoritesBarCtrl::needToSaveItemsOrder(const LLInventoryModel::item_array // if there is an item without sort order field set, we need to save items order for (LLInventoryModel::item_array_t::const_iterator i = items.begin(); i != items.end(); ++i) { - if ((*i)->getSortField() < 0) + if (LLFavoritesOrderStorage::instance().getSortIndex((*i)->getUUID()) < 0) { result = TRUE; break; @@ -1390,4 +1395,291 @@ void LLFavoritesBarCtrl::insertItem(LLInventoryModel::item_array_t& items, const } } +const std::string LLFavoritesOrderStorage::SORTING_DATA_FILE_NAME = "landmarks_sorting.xml"; +const S32 LLFavoritesOrderStorage::NO_INDEX = -1; + +void LLFavoritesOrderStorage::setSortIndex(const LLViewerInventoryItem* inv_item, S32 sort_index) +{ + mSortIndexes[inv_item->getUUID()] = sort_index; + mIsDirty = true; + getSLURL(inv_item->getAssetUUID()); +} + +S32 LLFavoritesOrderStorage::getSortIndex(const LLUUID& inv_item_id) +{ + sort_index_map_t::const_iterator it = mSortIndexes.find(inv_item_id); + if (it != mSortIndexes.end()) + { + return it->second; + } + return NO_INDEX; +} + +void LLFavoritesOrderStorage::removeSortIndex(const LLUUID& inv_item_id) +{ + mSortIndexes.erase(inv_item_id); + mIsDirty = true; +} + +void LLFavoritesOrderStorage::getSLURL(const LLUUID& asset_id) +{ + slurls_map_t::iterator slurl_iter = mSLURLs.find(asset_id); + if (slurl_iter != mSLURLs.end()) return; // SLURL for current landmark is already cached + + LLLandmark* lm = gLandmarkList.getAsset(asset_id, + boost::bind(&LLFavoritesOrderStorage::onLandmarkLoaded, this, asset_id, _1)); + if (lm) + { + onLandmarkLoaded(asset_id, lm); + } +} + +// static +void LLFavoritesOrderStorage::destroyClass() +{ + LLFavoritesOrderStorage::instance().cleanup(); + if (gSavedPerAccountSettings.getBOOL("ShowFavoritesOnLogin")) + { + LLFavoritesOrderStorage::instance().saveFavoritesSLURLs(); + } + else + { + LLFavoritesOrderStorage::instance().removeFavoritesRecordOfUser(); + } +} + +void LLFavoritesOrderStorage::load() +{ + // load per-resident sorting information + std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, SORTING_DATA_FILE_NAME); + + LLSD settings_llsd; + llifstream file; + file.open(filename); + if (file.is_open()) + { + LLSDSerialize::fromXML(settings_llsd, file); + } + + for (LLSD::map_const_iterator iter = settings_llsd.beginMap(); + iter != settings_llsd.endMap(); ++iter) + { + mSortIndexes.insert(std::make_pair(LLUUID(iter->first), (S32)iter->second.asInteger())); + } +} + +void LLFavoritesOrderStorage::saveFavoritesSLURLs() +{ + // Do not change the file if we are not logged in yet. + if (!LLLoginInstance::getInstance()->authSuccess()) + { + llwarns << "Cannot save favorites: not logged in" << llendl; + return; + } + + std::string user_dir = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, ""); + if (user_dir.empty()) + { + llwarns << "Cannot save favorites: empty user dir name" << llendl; + return; + } + + std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "stored_favorites.xml"); + llifstream in_file; + in_file.open(filename); + LLSD fav_llsd; + if (in_file.is_open()) + { + LLSDSerialize::fromXML(fav_llsd, in_file); + } + + const LLUUID fav_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); + LLInventoryModel::cat_array_t cats; + LLInventoryModel::item_array_t items; + gInventory.collectDescendents(fav_id, cats, items, LLInventoryModel::EXCLUDE_TRASH); + + LLSD user_llsd; + for (LLInventoryModel::item_array_t::iterator it = items.begin(); it != items.end(); it++) + { + LLSD value; + value["name"] = (*it)->getName(); + value["asset_id"] = (*it)->getAssetUUID(); + + slurls_map_t::iterator slurl_iter = mSLURLs.find(value["asset_id"]); + if (slurl_iter != mSLURLs.end()) + { + lldebugs << "Saving favorite: idx=" << LLFavoritesOrderStorage::instance().getSortIndex((*it)->getUUID()) << ", SLURL=" << slurl_iter->second << ", value=" << value << llendl; + value["slurl"] = slurl_iter->second; + user_llsd[LLFavoritesOrderStorage::instance().getSortIndex((*it)->getUUID())] = value; + } + else + { + llwarns << "Not saving favorite " << value["name"] << ": no matching SLURL" << llendl; + } + } + + LLAvatarName av_name; + LLAvatarNameCache::get( gAgentID, &av_name ); + lldebugs << "Saved favorites for " << av_name.getLegacyName() << llendl; + fav_llsd[av_name.getLegacyName()] = user_llsd; + + llofstream file; + file.open(filename); + LLSDSerialize::toPrettyXML(fav_llsd, file); +} + +void LLFavoritesOrderStorage::removeFavoritesRecordOfUser() +{ + std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "stored_favorites.xml"); + LLSD fav_llsd; + llifstream file; + file.open(filename); + if (!file.is_open()) return; + LLSDSerialize::fromXML(fav_llsd, file); + + LLAvatarName av_name; + LLAvatarNameCache::get( gAgentID, &av_name ); + lldebugs << "Removed favorites for " << av_name.getLegacyName() << llendl; + if (fav_llsd.has(av_name.getLegacyName())) + { + fav_llsd.erase(av_name.getLegacyName()); + } + + llofstream out_file; + out_file.open(filename); + LLSDSerialize::toPrettyXML(fav_llsd, out_file); + +} + +void LLFavoritesOrderStorage::onLandmarkLoaded(const LLUUID& asset_id, LLLandmark* landmark) +{ + if (!landmark) return; + + LLVector3d pos_global; + if (!landmark->getGlobalPos(pos_global)) + { + // If global position was unknown on first getGlobalPos() call + // it should be set for the subsequent calls. + landmark->getGlobalPos(pos_global); + } + + if (!pos_global.isExactlyZero()) + { + LLLandmarkActions::getSLURLfromPosGlobal(pos_global, + boost::bind(&LLFavoritesOrderStorage::storeFavoriteSLURL, this, asset_id, _1)); + } +} + +void LLFavoritesOrderStorage::storeFavoriteSLURL(const LLUUID& asset_id, std::string& slurl) +{ + lldebugs << "Saving landmark SLURL: " << slurl << llendl; + mSLURLs[asset_id] = slurl; +} + +void LLFavoritesOrderStorage::save() +{ + // nothing to save if clean + if (!mIsDirty) return; + + // If we quit from the login screen we will not have an SL account + // name. Don't try to save, otherwise we'll dump a file in + // C:\Program Files\SecondLife\ or similar. JC + std::string user_dir = gDirUtilp->getLindenUserDir(); + if (!user_dir.empty()) + { + std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, SORTING_DATA_FILE_NAME); + LLSD settings_llsd; + + for(sort_index_map_t::const_iterator iter = mSortIndexes.begin(); iter != mSortIndexes.end(); ++iter) + { + settings_llsd[iter->first.asString()] = iter->second; + } + + llofstream file; + file.open(filename); + LLSDSerialize::toPrettyXML(settings_llsd, file); + } +} + +void LLFavoritesOrderStorage::cleanup() +{ + // nothing to clean + if (!mIsDirty) return; + + const LLUUID fav_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); + LLInventoryModel::cat_array_t cats; + LLInventoryModel::item_array_t items; + gInventory.collectDescendents(fav_id, cats, items, LLInventoryModel::EXCLUDE_TRASH); + + IsNotInFavorites is_not_in_fav(items); + + sort_index_map_t aTempMap; + //copy unremoved values from mSortIndexes to aTempMap + std::remove_copy_if(mSortIndexes.begin(), mSortIndexes.end(), + inserter(aTempMap, aTempMap.begin()), + is_not_in_fav); + + //Swap the contents of mSortIndexes and aTempMap + mSortIndexes.swap(aTempMap); +} + +void LLFavoritesOrderStorage::saveItemsOrder( const LLInventoryModel::item_array_t& items ) +{ + int sortField = 0; + + // current order is saved by setting incremental values (1, 2, 3, ...) for the sort field + for (LLInventoryModel::item_array_t::const_iterator i = items.begin(); i != items.end(); ++i) + { + LLViewerInventoryItem* item = *i; + + setSortIndex(item, ++sortField); + + item->setComplete(TRUE); + item->updateServer(FALSE); + + gInventory.updateItem(item); + + // Tell the parent folder to refresh its sort order. + gInventory.addChangedMask(LLInventoryObserver::SORT, item->getParentUUID()); + } + + gInventory.notifyObservers(); +} + +// See also LLInventorySort where landmarks in the Favorites folder are sorted. +class LLViewerInventoryItemSort +{ +public: + bool operator()(const LLPointer& a, const LLPointer& b) + { + return LLFavoritesOrderStorage::instance().getSortIndex(a->getUUID()) + < LLFavoritesOrderStorage::instance().getSortIndex(b->getUUID()); + } +}; + +// * @param source_item_id - LLUUID of the source item to be moved into new position +// * @param target_item_id - LLUUID of the target item before which source item should be placed. +void LLFavoritesOrderStorage::rearrangeFavoriteLandmarks(const LLUUID& source_item_id, const LLUUID& target_item_id) +{ + LLInventoryModel::cat_array_t cats; + LLInventoryModel::item_array_t items; + LLIsType is_type(LLAssetType::AT_LANDMARK); + LLUUID favorites_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); + gInventory.collectDescendentsIf(favorites_id, cats, items, LLInventoryModel::EXCLUDE_TRASH, is_type); + + // ensure items are sorted properly before changing order. EXT-3498 + std::sort(items.begin(), items.end(), LLViewerInventoryItemSort()); + + // update order + gInventory.updateItemsOrder(items, source_item_id, target_item_id); + + saveItemsOrder(items); +} + +void AddFavoriteLandmarkCallback::fire(const LLUUID& inv_item_id) +{ + if (mTargetLandmarkId.isNull()) return; + + LLFavoritesOrderStorage::instance().rearrangeFavoriteLandmarks(inv_item_id, mTargetLandmarkId); +} // EOF diff --git a/indra/newview/llfavoritesbar.h b/indra/newview/llfavoritesbar.h index 2f75b3bb0e..60e02b661e 100644 --- a/indra/newview/llfavoritesbar.h +++ b/indra/newview/llfavoritesbar.h @@ -33,6 +33,7 @@ #include "llinventoryobserver.h" #include "llinventorymodel.h" +#include "llviewerinventory.h" class LLMenuItemCallGL; class LLToggleableMenu; @@ -161,5 +162,115 @@ private: boost::signals2::connection mEndDragConnection; }; +class AddFavoriteLandmarkCallback : public LLInventoryCallback +{ +public: + AddFavoriteLandmarkCallback() : mTargetLandmarkId(LLUUID::null) {} + void setTargetLandmarkId(const LLUUID& target_uuid) { mTargetLandmarkId = target_uuid; } + +private: + void fire(const LLUUID& inv_item); + + LLUUID mTargetLandmarkId; +}; + +/** + * Class to store sorting order of favorites landmarks in a local file. EXT-3985. + * It replaced previously implemented solution to store sort index in landmark's name as a "@" prefix. + * Data are stored in user home directory. + */ +class LLFavoritesOrderStorage : public LLSingleton + , public LLDestroyClass +{ + LOG_CLASS(LLFavoritesOrderStorage); +public: + /** + * Sets sort index for specified with LLUUID favorite landmark + */ + void setSortIndex(const LLViewerInventoryItem* inv_item, S32 sort_index); + + /** + * Gets sort index for specified with LLUUID favorite landmark + */ + S32 getSortIndex(const LLUUID& inv_item_id); + void removeSortIndex(const LLUUID& inv_item_id); + + void getSLURL(const LLUUID& asset_id); + + // Saves current order of the passed items using inventory item sort field. + // Resets 'items' sort fields and saves them on server. + // Is used to save order for Favorites folder. + void saveItemsOrder(const LLInventoryModel::item_array_t& items); + + void rearrangeFavoriteLandmarks(const LLUUID& source_item_id, const LLUUID& target_item_id); + + /** + * Implementation of LLDestroyClass. Calls cleanup() instance method. + * + * It is important this callback is called before gInventory is cleaned. + * For now it is called from LLAppViewer::cleanup() -> LLAppViewer::disconnectViewer(), + * Inventory is cleaned later from LLAppViewer::cleanup() after LLAppViewer::disconnectViewer() is called. + * @see cleanup() + */ + static void destroyClass(); + + const static S32 NO_INDEX; +private: + friend class LLSingleton; + LLFavoritesOrderStorage() : mIsDirty(false) { load(); } + ~LLFavoritesOrderStorage() { save(); } + + /** + * Removes sort indexes for items which are not in Favorites bar for now. + */ + void cleanup(); + + const static std::string SORTING_DATA_FILE_NAME; + + void load(); + void save(); + + void saveFavoritesSLURLs(); + + // Remove record of current user's favorites from file on disk. + void removeFavoritesRecordOfUser(); + + void onLandmarkLoaded(const LLUUID& asset_id, class LLLandmark* landmark); + void storeFavoriteSLURL(const LLUUID& asset_id, std::string& slurl); + + typedef std::map sort_index_map_t; + sort_index_map_t mSortIndexes; + + typedef std::map slurls_map_t; + slurls_map_t mSLURLs; + + bool mIsDirty; + + struct IsNotInFavorites + { + IsNotInFavorites(const LLInventoryModel::item_array_t& items) + : mFavoriteItems(items) + { + + } + + /** + * Returns true if specified item is not found among inventory items + */ + bool operator()(const sort_index_map_t::value_type& id_index_pair) const + { + LLPointer item = gInventory.getItem(id_index_pair.first); + if (item.isNull()) return true; + + LLInventoryModel::item_array_t::const_iterator found_it = + std::find(mFavoriteItems.begin(), mFavoriteItems.end(), item); + + return found_it == mFavoriteItems.end(); + } + private: + LLInventoryModel::item_array_t mFavoriteItems; + }; + +}; #endif // LL_LLFAVORITESBARCTRL_H diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 6bae1d5644..ee8c94a2dd 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -195,8 +195,10 @@ LLFolderView::LLFolderView(const Params& p) mUseEllipses(p.use_ellipses), mDraggingOverItem(NULL), mStatusTextBox(NULL), + mShowItemLinkOverlays(p.show_item_link_overlays), mViewModel(p.view_model) { + mViewModel->setFolderView(this); mRoot = this; LLRect rect = p.rect; diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 813b4d130f..8b58da9f45 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -96,7 +96,8 @@ public: Optional use_label_suffix, allow_multiselect, show_empty_message, - use_ellipses; + use_ellipses, + show_item_link_overlays; Mandatory view_model; Params(); @@ -239,6 +240,8 @@ public: void setPinningSelectedItem(BOOL val) { mPinningSelectedItem = val; } void setAutoSelectOverride(BOOL val) { mAutoSelectOverride = val; } + bool showItemLinkOverlays() { return mShowItemLinkOverlays; } + void setCallbackRegistrar(LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* registrar) { mCallbackRegistrar = registrar; } BOOL getDebugFilters() { return mDebugFilters; } @@ -294,6 +297,7 @@ protected: BOOL mAutoSelectOverride; BOOL mNeedsAutoRename; bool mUseLabelSuffix; + bool mShowItemLinkOverlays; BOOL mDebugFilters; U32 mSortOrder; diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 5b73a34d29..3f0b493986 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -91,10 +91,7 @@ void LLFolderViewItem::cleanupClass() // NOTE: Optimize this, we call it a *lot* when opening a large inventory LLFolderViewItem::Params::Params() -: icon(), - icon_open(), - icon_overlay(), - root(), +: root(), listener(), folder_arrow_image("folder_arrow_image"), folder_indentation("folder_indentation"), @@ -125,12 +122,10 @@ LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) mDragAndDropTarget(FALSE), mLabel(p.name), mRoot(p.root), - mIcon(p.icon), - mIconOpen(p.icon_open), - mIconOverlay(p.icon_overlay), mListener(p.listener), mIsMouseOverTitle(false) { + mListener->setFolderViewItem(this); } BOOL LLFolderViewItem::postBuild() @@ -243,11 +238,6 @@ void LLFolderViewItem::setFiltered(BOOL filtered, S32 filter_generation) mLastFilterGeneration = filter_generation; } -void LLFolderViewItem::setIcon(LLUIImagePtr icon) -{ - mIcon = icon; -} - void LLFolderViewItem::refresh() { if(!getViewModelItem()) return; @@ -255,7 +245,10 @@ void LLFolderViewItem::refresh() mLabel = getViewModelItem()->getDisplayName(); setToolTip(mLabel); - setIcon(getViewModelItem()->getIcon()); + mIcon = getViewModelItem()->getIcon(); + mIconOpen = getViewModelItem()->getIconOpen(); + mIconOverlay = getViewModelItem()->getIconOverlay(); + if (mRoot->useLabelSuffix()) { mLabelStyle = getViewModelItem()->getLabelStyle(); @@ -907,27 +900,23 @@ void LLFolderViewItem::draw() mDragAndDropTarget = FALSE; } - //TODO RN: implement this in terms of getIcon() and getIconOverlay() - - //const LLViewerInventoryItem *item = getInventoryItem(); - //const BOOL highlight_link = mIconOverlay && item && item->getIsLinkType(); - ////--------------------------------------------------------------------------------// - //// Draw open icon - //// - //const S32 icon_x = mIndentation + ARROW_SIZE + TEXT_PAD; - //if (!mIconOpen.isNull() && (llabs(mControlLabelRotation) > 80)) // For open folders - // { - // mIconOpen->draw(icon_x, getRect().getHeight() - mIconOpen->getHeight() - TOP_PAD + 1); - //} - //else if (mIcon) - //{ - // mIcon->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); - // } + //--------------------------------------------------------------------------------// + // Draw open icon + // + const S32 icon_x = mIndentation + ARROW_SIZE + TEXT_PAD; + if (!mIconOpen.isNull() && (llabs(mControlLabelRotation) > 80)) // For open folders + { + mIconOpen->draw(icon_x, getRect().getHeight() - mIconOpen->getHeight() - TOP_PAD + 1); + } + else if (mIcon) + { + mIcon->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); + } - //if (highlight_link) - //{ - // mIconOverlay->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); - //} + if (mIconOverlay && getRoot()->showItemLinkOverlays()) + { + mIconOverlay->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); + } //--------------------------------------------------------------------------------// // Exit if no label to draw @@ -1242,7 +1231,7 @@ BOOL LLFolderViewFolder::needsArrange() void LLFolderViewFolder::requestSort() { - getRoot()->getFolderViewModel()->requestSort(this); + getViewModelItem()->requestSort(); } void LLFolderViewFolder::setCompletedFilterGeneration(S32 generation, BOOL recurse_up) @@ -2007,13 +1996,13 @@ BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) addChild( folder ); folder->dirtyFilter(); // rearrange all descendants too, as our indentation level might have changed - folder->requestArrange(TRUE); + folder->requestArrange(); requestSort(); return TRUE; } -void LLFolderViewFolder::requestArrange(BOOL include_descendants) +void LLFolderViewFolder::requestArrange() { mLastArrangeGeneration = -1; // flag all items up to root @@ -2021,16 +2010,6 @@ void LLFolderViewFolder::requestArrange(BOOL include_descendants) { mParentFolder->requestArrange(); } - - if (include_descendants) - { - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end(); - ++iter) - { - (*iter)->requestArrange(TRUE); - } - } } void LLFolderViewFolder::toggleOpen() diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index feba32e31d..fd2948f34e 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -51,10 +51,7 @@ public: struct Params : public LLInitParam::Block { - Optional icon, - icon_open, // used for folders - icon_overlay, // for links - folder_arrow_image, + Optional folder_arrow_image, selection_image; Optional root; Mandatory listener; @@ -252,9 +249,6 @@ public: virtual BOOL getFiltered(S32 filter_generation); virtual void setFiltered(BOOL filtered, S32 filter_generation); - // change the icon - void setIcon(LLUIImagePtr icon); - // refresh information from the object being viewed. virtual void refresh(); @@ -416,8 +410,7 @@ public: virtual void setOpen(BOOL openitem = TRUE); // Called when a child is refreshed. - // don't rearrange child folder contents unless explicitly requested - virtual void requestArrange(BOOL include_descendants = FALSE); + virtual void requestArrange(); virtual void requestSort(); diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index 930c26384c..c3dcfed97c 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -120,18 +120,20 @@ class LLFolderViewModelInterface { public: virtual void requestSortAll() = 0; - virtual void requestSort(class LLFolderViewFolder*) = 0; virtual void sort(class LLFolderViewFolder*) = 0; virtual void filter(class LLFolderViewFolder*) = 0; virtual bool contentsReady() = 0; + virtual void setFolderView(LLFolderView* folder_view) = 0; }; -struct LLFolderViewModelCommon : public LLFolderViewModelInterface +class LLFolderViewModelCommon : public LLFolderViewModelInterface { +public: LLFolderViewModelCommon() - : mTargetSortVersion(0) + : mTargetSortVersion(0), + mFolderView(NULL) {} virtual void requestSortAll() @@ -140,15 +142,14 @@ struct LLFolderViewModelCommon : public LLFolderViewModelInterface mTargetSortVersion++; } - virtual void requestSort(class LLFolderViewFolder* folder) - { - folder->requestSort(); - } - + void setFolderView(LLFolderView* folder_view) { mFolderView = folder_view;} + protected: bool needsSort(class LLFolderViewModelItem* item); S32 mTargetSortVersion; + LLFolderView* mFolderView; + }; // This is am abstract base class that users of the folderview classes @@ -156,6 +157,10 @@ protected: class LLFolderViewModelItem { public: + LLFolderViewModelItem() + : mFolderViewItem(NULL) + {} + virtual ~LLFolderViewModelItem( void ) {}; virtual void update() {} //called when drawing @@ -163,7 +168,8 @@ public: virtual const std::string& getDisplayName() const = 0; virtual LLPointer getIcon() const = 0; - virtual LLPointer getOpenIcon() const { return getIcon(); } + virtual LLPointer getIconOpen() const { return getIcon(); } + virtual LLPointer getIconOverlay() const { return NULL; } virtual LLFontGL::StyleFlags getLabelStyle() const = 0; virtual std::string getLabelSuffix() const = 0; @@ -211,6 +217,11 @@ public: virtual void requestSort() = 0; virtual S32 getSortVersion() = 0; virtual void setSortVersion(S32 version) = 0; +protected: + friend LLFolderViewItem; + void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;} + LLFolderViewItem* mFolderViewItem; + }; class LLFolderViewModelItemCommon : public LLFolderViewModelItem @@ -225,6 +236,7 @@ public: void setSortVersion(S32 version) { mSortVersion = version;} protected: + S32 mSortVersion; }; @@ -232,7 +244,7 @@ template getIsLinkType()) + { + return LLUI::getUIImage("Inv_Link"); + } + return NULL; +} + + BOOL LLFolderBridge::renameItem(const std::string& new_name) { rename_category(getInventoryModel(), mUUID, new_name); @@ -4017,7 +4029,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, { LLUUID srcItemId = inv_item->getUUID(); LLUUID destItemId = static_cast(itemp->getViewModelItem())->getUUID(); - gInventory.rearrangeFavoriteLandmarks(srcItemId, destItemId); + LLFavoritesOrderStorage::instance().rearrangeFavoriteLandmarks(srcItemId, destItemId); } } diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index 111735e198..26789627f7 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -260,7 +260,9 @@ public: virtual LLFolderType::EType getPreferredType() const; virtual LLUIImagePtr getIcon() const; - virtual LLUIImagePtr getOpenIcon() const; + virtual LLUIImagePtr getIconOpen() const; + virtual LLUIImagePtr getIconOverlay() const; + static LLUIImagePtr getIcon(LLFolderType::EType preferred_type); virtual BOOL renameItem(const std::string& new_name); @@ -338,8 +340,7 @@ private: bool mWearables; bool mIsLoading; LLTimer mTimeSinceRequestStart; - mutable std::string mDisplayName; - LLRootHandle mHandle; + LLRootHandle mHandle; }; class LLTextureBridge : public LLItemBridge diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index 85ecb133d0..9b0d12b353 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -3201,68 +3201,7 @@ void LLInventoryModel::updateItemsOrder(LLInventoryModel::item_array_t& items, c } } -//* @param[in] items vector of items in order to be saved. -void LLInventoryModel::saveItemsOrder(const LLInventoryModel::item_array_t& items) -{ - int sortField = 0; - - // current order is saved by setting incremental values (1, 2, 3, ...) for the sort field - for (item_array_t::const_iterator i = items.begin(); i != items.end(); ++i) - { - LLViewerInventoryItem* item = *i; - - item->setSortField(++sortField); - item->setComplete(TRUE); - item->updateServer(FALSE); - - updateItem(item); - - // Tell the parent folder to refresh its sort order. - addChangedMask(LLInventoryObserver::SORT, item->getParentUUID()); - } - - notifyObservers(); -} - -// See also LLInventorySort where landmarks in the Favorites folder are sorted. -class LLViewerInventoryItemSort -{ -public: - bool operator()(const LLPointer& a, const LLPointer& b) - { - return a->getSortField() < b->getSortField(); - } -}; -/** - * Sorts passed items by LLViewerInventoryItem sort field. - * - * @param[in, out] items - array of items, not sorted. - */ -static void rearrange_item_order_by_sort_field(LLInventoryModel::item_array_t& items) -{ - static LLViewerInventoryItemSort sort_functor; - std::sort(items.begin(), items.end(), sort_functor); -} - -// * @param source_item_id - LLUUID of the source item to be moved into new position -// * @param target_item_id - LLUUID of the target item before which source item should be placed. -void LLInventoryModel::rearrangeFavoriteLandmarks(const LLUUID& source_item_id, const LLUUID& target_item_id) -{ - LLInventoryModel::cat_array_t cats; - LLInventoryModel::item_array_t items; - LLIsType is_type(LLAssetType::AT_LANDMARK); - LLUUID favorites_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); - gInventory.collectDescendentsIf(favorites_id, cats, items, LLInventoryModel::EXCLUDE_TRASH, is_type); - - // ensure items are sorted properly before changing order. EXT-3498 - rearrange_item_order_by_sort_field(items); - - // update order - updateItemsOrder(items, source_item_id, target_item_id); - - saveItemsOrder(items); -} //---------------------------------------------------------------------------- diff --git a/indra/newview/llinventorymodel.h b/indra/newview/llinventorymodel.h index 8382e875b4..3613bc4917 100644 --- a/indra/newview/llinventorymodel.h +++ b/indra/newview/llinventorymodel.h @@ -362,15 +362,6 @@ public: // Returns end() of the vector if not found. static LLInventoryModel::item_array_t::iterator findItemIterByUUID(LLInventoryModel::item_array_t& items, const LLUUID& id); - // Saves current order of the passed items using inventory item sort field. - // Resets 'items' sort fields and saves them on server. - // Is used to save order for Favorites folder. - void saveItemsOrder(const LLInventoryModel::item_array_t& items); - - // Rearranges Landmarks inside Favorites folder. - // Moves source landmark before target one. - void rearrangeFavoriteLandmarks(const LLUUID& source_item_id, const LLUUID& target_item_id); - //-------------------------------------------------------------------- // Creation //-------------------------------------------------------------------- diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index d576160277..74492e0005 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -59,17 +59,6 @@ static const LLInventoryFVBridgeBuilder INVENTORY_BRIDGE_BUILDER; // // class LLFolderViewModelInventory // -void LLFolderViewModelInventory::requestSort(class LLFolderViewFolder* folder) -{ - base_t::requestSort(folder); - if (getSorter().isByDate()) - { - // sort by date potentially affects parent folders which use a date - // derived from newest item in them - requestSort(folder->getParentFolder()); - } -} - static LLFastTimer::DeclareTimer FTM_INVENTORY_SORT("Sort"); void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) @@ -690,6 +679,7 @@ LLFolderView * LLInventoryPanel::createFolderView(LLInvFVBridge * bridge, bool u p.use_label_suffix = useLabelSuffix; p.allow_multiselect = mAllowMultiSelect; p.show_empty_message = mShowEmptyMessage; + p.show_item_link_overlays = mShowItemLinkOverlays; return LLUICtrlFactory::create(p); } @@ -699,14 +689,6 @@ LLFolderViewFolder * LLInventoryPanel::createFolderViewFolder(LLInvFVBridge * br LLFolderViewFolder::Params params; params.name = bridge->getDisplayName(); - params.icon = bridge->getIcon(); - params.icon_open = bridge->getOpenIcon(); - - if (mShowItemLinkOverlays) // if false, then links show up just like normal items - { - params.icon_overlay = LLUI::getUIImage("Inv_Link"); - } - params.root = mFolderRoot; params.listener = bridge; params.tool_tip = params.name; @@ -719,14 +701,6 @@ LLFolderViewItem * LLInventoryPanel::createFolderViewItem(LLInvFVBridge * bridge LLFolderViewItem::Params params; params.name = bridge->getDisplayName(); - params.icon = bridge->getIcon(); - params.icon_open = bridge->getOpenIcon(); - - if (mShowItemLinkOverlays) // if false, then links show up just like normal items - { - params.icon_overlay = LLUI::getUIImage("Inv_Link"); - } - params.creation_date = bridge->getCreationDate(); params.root = mFolderRoot; params.listener = bridge; @@ -743,7 +717,9 @@ LLFolderViewItem* LLInventoryPanel::buildNewViews(const LLUUID& id) if (!objectp) return NULL; LLFolderViewItem* folder_view_item = getItemByID(id); - LLFolderViewFolder* parent_folder = folder_view_item->getParentFolder(); + + const LLUUID &parent_id = objectp->getParentUUID(); + LLFolderViewFolder* parent_folder = (LLFolderViewFolder*)getItemByID(parent_id); if (!folder_view_item && parent_folder) { @@ -1370,3 +1346,15 @@ LLInventoryRecentItemsPanel::LLInventoryRecentItemsPanel( const Params& params) mInvFVBridgeBuilder = &RECENT_ITEMS_BUILDER; } + +void LLFolderViewModelItemInventory::requestSort() +{ + LLFolderViewModelItemCommon::requestSort(); + //TODO RN: need better way to get to root viewmodel, also consider reflecting hierarchy in viewmodel space as well + if (static_cast(mFolderViewItem->getRoot()->getFolderViewModel())->getSorter().isByDate()) + { + // sort by date potentially affects parent folders which use a date + // derived from newest item in them + mFolderViewItem->getParentFolder()->getViewModelItem()->requestSort(); + } +} diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 2aa05e1b61..645e2f6d76 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -61,6 +61,7 @@ public: virtual LLWearableType::EType getWearableType() const = 0; virtual EInventorySortGroup getSortGroup() const = 0; virtual LLInventoryObject* getInventoryObject() const = 0; + virtual void requestSort(); }; class LLInventorySort @@ -97,7 +98,6 @@ public: virtual ~LLFolderViewModelInventory() {} void sort(LLFolderViewFolder* folder); - void requestSort(LLFolderViewFolder* folder); bool contentsReady(); diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index d2143783ad..f3096e862d 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -122,14 +122,6 @@ LLFolderViewFolder * LLInboxInventoryPanel::createFolderViewFolder(LLInvFVBridge LLInboxFolderViewFolder::Params params; params.name = bridge->getDisplayName(); - params.icon = bridge->getIcon(); - params.icon_open = bridge->getOpenIcon(); - - if (mShowItemLinkOverlays) // if false, then links show up just like normal items - { - params.icon_overlay = LLUI::getUIImage("Inv_Link"); - } - params.root = mFolderRoot; params.listener = bridge; params.tool_tip = params.name; @@ -142,14 +134,6 @@ LLFolderViewItem * LLInboxInventoryPanel::createFolderViewItem(LLInvFVBridge * b LLInboxFolderViewItem::Params params; params.name = bridge->getDisplayName(); - params.icon = bridge->getIcon(); - params.icon_open = bridge->getOpenIcon(); - - if (mShowItemLinkOverlays) // if false, then links show up just like normal items - { - params.icon_overlay = LLUI::getUIImage("Inv_Link"); - } - params.creation_date = bridge->getCreationDate(); params.root = mFolderRoot; params.listener = bridge; diff --git a/indra/newview/llpanelmarketplaceoutboxinventory.cpp b/indra/newview/llpanelmarketplaceoutboxinventory.cpp index 7db01d9059..783eeb11b8 100644 --- a/indra/newview/llpanelmarketplaceoutboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceoutboxinventory.cpp @@ -88,14 +88,6 @@ LLFolderViewFolder * LLOutboxInventoryPanel::createFolderViewFolder(LLInvFVBridg LLOutboxFolderViewFolder::Params params; params.name = bridge->getDisplayName(); - params.icon = bridge->getIcon(); - params.icon_open = bridge->getOpenIcon(); - - if (mShowItemLinkOverlays) // if false, then links show up just like normal items - { - params.icon_overlay = LLUI::getUIImage("Inv_Link"); - } - params.root = mFolderRoot; params.listener = bridge; params.tool_tip = params.name; @@ -108,14 +100,6 @@ LLFolderViewItem * LLOutboxInventoryPanel::createFolderViewItem(LLInvFVBridge * LLFolderViewItem::Params params; params.name = bridge->getDisplayName(); - params.icon = bridge->getIcon(); - params.icon_open = bridge->getOpenIcon(); - - if (mShowItemLinkOverlays) // if false, then links show up just like normal items - { - params.icon_overlay = LLUI::getUIImage("Inv_Link"); - } - params.creation_date = bridge->getCreationDate(); params.root = mFolderRoot; params.listener = bridge; diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 0ba8c1ce6d..da82d70f22 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1551,6 +1551,7 @@ void LLPanelObjectInventory::reset() p.tool_tip= LLTrans::getString("PanelContentsTooltip"); p.listener = LLTaskInvFVBridge::createObjectBridge(this, NULL); p.folder_indentation = -14; // subtract space normally reserved for folder expanders + p.view_model = new LLFolderViewModelInventory(); mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" //TODO RN: make this happen by manipulating filter object directly @@ -1693,18 +1694,6 @@ void LLPanelObjectInventory::createFolderViews(LLInventoryObject* inventory_root bridge = LLTaskInvFVBridge::createObjectBridge(this, inventory_root); if(bridge) { - //LLFolderViewFolder* new_folder = NULL; - //LLFolderViewFolder::Params p; - //p.name = inventory_root->getName(); - //p.icon = LLUI::getUIImage("Inv_FolderClosed"); - //p.icon_open = LLUI::getUIImage("Inv_FolderOpen"); - //p.root = mFolders; - //p.listener = bridge; - //p.tool_tip = p.name; - //new_folder = LLUICtrlFactory::create(p); - //new_folder->addToFolder(mFolders, mFolders); - //new_folder->toggleOpen(); - createViewsForCategory(&contents, inventory_root, mFolders); } } @@ -1737,8 +1726,6 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li { LLFolderViewFolder::Params p; p.name = obj->getName(); - p.icon = LLUI::getUIImage("Inv_FolderClosed"); - p.icon_open = LLUI::getUIImage("Inv_FolderOpen"); p.root = mFolders; p.listener = bridge; p.tool_tip = p.name; @@ -1750,7 +1737,6 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li { LLFolderViewItem::Params params; params.name(obj->getName()); - params.icon(bridge->getIcon()); params.creation_date(bridge->getCreationDate()); params.root(mFolders); params.listener(bridge); diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp index 749a6d22e0..d81b016fc1 100644 --- a/indra/newview/llviewerinventory.cpp +++ b/indra/newview/llviewerinventory.cpp @@ -1030,12 +1030,7 @@ void CreateGestureCallback::fire(const LLUUID& inv_item) gFloaterView->adjustToFitScreen(preview, FALSE); } -void AddFavoriteLandmarkCallback::fire(const LLUUID& inv_item_id) -{ - if (mTargetLandmarkId.isNull()) return; - gInventory.rearrangeFavoriteLandmarks(inv_item_id, mTargetLandmarkId); -} LLInventoryCallbackManager gInventoryCallbacks; @@ -1449,342 +1444,6 @@ const std::string& LLViewerInventoryItem::getName() const return LLInventoryItem::getName(); } -/** - * Class to store sorting order of favorites landmarks in a local file. EXT-3985. - * It replaced previously implemented solution to store sort index in landmark's name as a "@" prefix. - * Data are stored in user home directory. - */ -class LLFavoritesOrderStorage : public LLSingleton - , public LLDestroyClass -{ - LOG_CLASS(LLFavoritesOrderStorage); -public: - /** - * Sets sort index for specified with LLUUID favorite landmark - */ - void setSortIndex(const LLUUID& inv_item_id, S32 sort_index); - - /** - * Gets sort index for specified with LLUUID favorite landmark - */ - S32 getSortIndex(const LLUUID& inv_item_id); - void removeSortIndex(const LLUUID& inv_item_id); - - void getSLURL(const LLUUID& asset_id); - - /** - * Implementation of LLDestroyClass. Calls cleanup() instance method. - * - * It is important this callback is called before gInventory is cleaned. - * For now it is called from LLAppViewer::cleanup() -> LLAppViewer::disconnectViewer(), - * Inventory is cleaned later from LLAppViewer::cleanup() after LLAppViewer::disconnectViewer() is called. - * @see cleanup() - */ - static void destroyClass(); - - const static S32 NO_INDEX; -private: - friend class LLSingleton; - LLFavoritesOrderStorage() : mIsDirty(false) { load(); } - ~LLFavoritesOrderStorage() { save(); } - - /** - * Removes sort indexes for items which are not in Favorites bar for now. - */ - void cleanup(); - - const static std::string SORTING_DATA_FILE_NAME; - - void load(); - void save(); - - void saveFavoritesSLURLs(); - - // Remove record of current user's favorites from file on disk. - void removeFavoritesRecordOfUser(); - - void onLandmarkLoaded(const LLUUID& asset_id, LLLandmark* landmark); - void storeFavoriteSLURL(const LLUUID& asset_id, std::string& slurl); - - typedef std::map sort_index_map_t; - sort_index_map_t mSortIndexes; - - typedef std::map slurls_map_t; - slurls_map_t mSLURLs; - - bool mIsDirty; - - struct IsNotInFavorites - { - IsNotInFavorites(const LLInventoryModel::item_array_t& items) - : mFavoriteItems(items) - { - - } - - /** - * Returns true if specified item is not found among inventory items - */ - bool operator()(const sort_index_map_t::value_type& id_index_pair) const - { - LLPointer item = gInventory.getItem(id_index_pair.first); - if (item.isNull()) return true; - - LLInventoryModel::item_array_t::const_iterator found_it = - std::find(mFavoriteItems.begin(), mFavoriteItems.end(), item); - - return found_it == mFavoriteItems.end(); - } - private: - LLInventoryModel::item_array_t mFavoriteItems; - }; - -}; - -const std::string LLFavoritesOrderStorage::SORTING_DATA_FILE_NAME = "landmarks_sorting.xml"; -const S32 LLFavoritesOrderStorage::NO_INDEX = -1; - -void LLFavoritesOrderStorage::setSortIndex(const LLUUID& inv_item_id, S32 sort_index) -{ - mSortIndexes[inv_item_id] = sort_index; - mIsDirty = true; -} - -S32 LLFavoritesOrderStorage::getSortIndex(const LLUUID& inv_item_id) -{ - sort_index_map_t::const_iterator it = mSortIndexes.find(inv_item_id); - if (it != mSortIndexes.end()) - { - return it->second; - } - return NO_INDEX; -} - -void LLFavoritesOrderStorage::removeSortIndex(const LLUUID& inv_item_id) -{ - mSortIndexes.erase(inv_item_id); - mIsDirty = true; -} - -void LLFavoritesOrderStorage::getSLURL(const LLUUID& asset_id) -{ - slurls_map_t::iterator slurl_iter = mSLURLs.find(asset_id); - if (slurl_iter != mSLURLs.end()) return; // SLURL for current landmark is already cached - - LLLandmark* lm = gLandmarkList.getAsset(asset_id, - boost::bind(&LLFavoritesOrderStorage::onLandmarkLoaded, this, asset_id, _1)); - if (lm) - { - onLandmarkLoaded(asset_id, lm); - } -} - -// static -void LLFavoritesOrderStorage::destroyClass() -{ - LLFavoritesOrderStorage::instance().cleanup(); - if (gSavedPerAccountSettings.getBOOL("ShowFavoritesOnLogin")) - { - LLFavoritesOrderStorage::instance().saveFavoritesSLURLs(); - } - else - { - LLFavoritesOrderStorage::instance().removeFavoritesRecordOfUser(); - } -} - -void LLFavoritesOrderStorage::load() -{ - // load per-resident sorting information - std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, SORTING_DATA_FILE_NAME); - - LLSD settings_llsd; - llifstream file; - file.open(filename); - if (file.is_open()) - { - LLSDSerialize::fromXML(settings_llsd, file); - } - - for (LLSD::map_const_iterator iter = settings_llsd.beginMap(); - iter != settings_llsd.endMap(); ++iter) - { - mSortIndexes.insert(std::make_pair(LLUUID(iter->first), (S32)iter->second.asInteger())); - } -} - -void LLFavoritesOrderStorage::saveFavoritesSLURLs() -{ - // Do not change the file if we are not logged in yet. - if (!LLLoginInstance::getInstance()->authSuccess()) - { - llwarns << "Cannot save favorites: not logged in" << llendl; - return; - } - - std::string user_dir = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, ""); - if (user_dir.empty()) - { - llwarns << "Cannot save favorites: empty user dir name" << llendl; - return; - } - - std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "stored_favorites.xml"); - llifstream in_file; - in_file.open(filename); - LLSD fav_llsd; - if (in_file.is_open()) - { - LLSDSerialize::fromXML(fav_llsd, in_file); - } - - const LLUUID fav_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); - LLInventoryModel::cat_array_t cats; - LLInventoryModel::item_array_t items; - gInventory.collectDescendents(fav_id, cats, items, LLInventoryModel::EXCLUDE_TRASH); - - LLSD user_llsd; - for (LLInventoryModel::item_array_t::iterator it = items.begin(); it != items.end(); it++) - { - LLSD value; - value["name"] = (*it)->getName(); - value["asset_id"] = (*it)->getAssetUUID(); - - slurls_map_t::iterator slurl_iter = mSLURLs.find(value["asset_id"]); - if (slurl_iter != mSLURLs.end()) - { - lldebugs << "Saving favorite: idx=" << (*it)->getSortField() << ", SLURL=" << slurl_iter->second << ", value=" << value << llendl; - value["slurl"] = slurl_iter->second; - user_llsd[(*it)->getSortField()] = value; - } - else - { - llwarns << "Not saving favorite " << value["name"] << ": no matching SLURL" << llendl; - } - } - - LLAvatarName av_name; - LLAvatarNameCache::get( gAgentID, &av_name ); - lldebugs << "Saved favorites for " << av_name.getLegacyName() << llendl; - fav_llsd[av_name.getLegacyName()] = user_llsd; - - llofstream file; - file.open(filename); - LLSDSerialize::toPrettyXML(fav_llsd, file); -} - -void LLFavoritesOrderStorage::removeFavoritesRecordOfUser() -{ - std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "stored_favorites.xml"); - LLSD fav_llsd; - llifstream file; - file.open(filename); - if (!file.is_open()) return; - LLSDSerialize::fromXML(fav_llsd, file); - - LLAvatarName av_name; - LLAvatarNameCache::get( gAgentID, &av_name ); - lldebugs << "Removed favorites for " << av_name.getLegacyName() << llendl; - if (fav_llsd.has(av_name.getLegacyName())) - { - fav_llsd.erase(av_name.getLegacyName()); - } - - llofstream out_file; - out_file.open(filename); - LLSDSerialize::toPrettyXML(fav_llsd, out_file); - -} - -void LLFavoritesOrderStorage::onLandmarkLoaded(const LLUUID& asset_id, LLLandmark* landmark) -{ - if (!landmark) return; - - LLVector3d pos_global; - if (!landmark->getGlobalPos(pos_global)) - { - // If global position was unknown on first getGlobalPos() call - // it should be set for the subsequent calls. - landmark->getGlobalPos(pos_global); - } - - if (!pos_global.isExactlyZero()) - { - LLLandmarkActions::getSLURLfromPosGlobal(pos_global, - boost::bind(&LLFavoritesOrderStorage::storeFavoriteSLURL, this, asset_id, _1)); - } -} - -void LLFavoritesOrderStorage::storeFavoriteSLURL(const LLUUID& asset_id, std::string& slurl) -{ - lldebugs << "Saving landmark SLURL: " << slurl << llendl; - mSLURLs[asset_id] = slurl; -} - -void LLFavoritesOrderStorage::save() -{ - // nothing to save if clean - if (!mIsDirty) return; - - // If we quit from the login screen we will not have an SL account - // name. Don't try to save, otherwise we'll dump a file in - // C:\Program Files\SecondLife\ or similar. JC - std::string user_dir = gDirUtilp->getLindenUserDir(); - if (!user_dir.empty()) - { - std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, SORTING_DATA_FILE_NAME); - LLSD settings_llsd; - - for(sort_index_map_t::const_iterator iter = mSortIndexes.begin(); iter != mSortIndexes.end(); ++iter) - { - settings_llsd[iter->first.asString()] = iter->second; - } - - llofstream file; - file.open(filename); - LLSDSerialize::toPrettyXML(settings_llsd, file); - } -} - -void LLFavoritesOrderStorage::cleanup() -{ - // nothing to clean - if (!mIsDirty) return; - - const LLUUID fav_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); - LLInventoryModel::cat_array_t cats; - LLInventoryModel::item_array_t items; - gInventory.collectDescendents(fav_id, cats, items, LLInventoryModel::EXCLUDE_TRASH); - - IsNotInFavorites is_not_in_fav(items); - - sort_index_map_t aTempMap; - //copy unremoved values from mSortIndexes to aTempMap - std::remove_copy_if(mSortIndexes.begin(), mSortIndexes.end(), - inserter(aTempMap, aTempMap.begin()), - is_not_in_fav); - - //Swap the contents of mSortIndexes and aTempMap - mSortIndexes.swap(aTempMap); -} - - -S32 LLViewerInventoryItem::getSortField() const -{ - return LLFavoritesOrderStorage::instance().getSortIndex(mUUID); -} - -void LLViewerInventoryItem::setSortField(S32 sortField) -{ - LLFavoritesOrderStorage::instance().setSortIndex(mUUID, sortField); - getSLURL(); -} - -void LLViewerInventoryItem::getSLURL() -{ - LLFavoritesOrderStorage::instance().getSLURL(mAssetUUID); -} - const LLUUID& LLViewerInventoryItem::getCreatorUUID() const { if (const LLViewerInventoryItem *linked_item = getLinkedItem()) diff --git a/indra/newview/llviewerinventory.h b/indra/newview/llviewerinventory.h index d66362d544..3cf03c3bc5 100644 --- a/indra/newview/llviewerinventory.h +++ b/indra/newview/llviewerinventory.h @@ -60,9 +60,6 @@ public: virtual const LLUUID& getAssetUUID() const; virtual const LLUUID& getProtectedAssetUUID() const; // returns LLUUID::null if current agent does not have permission to expose this asset's UUID to the user virtual const std::string& getName() const; - virtual S32 getSortField() const; - virtual void setSortField(S32 sortField); - virtual void getSLURL(); //Caches SLURL for landmark. //*TODO: Find a better way to do it and remove this method from here. virtual const bool getIsFullPerm() const; // 'fullperm' in the popular sense: modify-ok & copy-ok & transfer-ok, no special god rules applied virtual const LLUUID& getCreatorUUID() const; virtual const std::string& getDescription() const; @@ -72,7 +69,7 @@ public: virtual LLWearableType::EType getWearableType() const; virtual U32 getFlags() const; - using LLInventoryItem::getPermissions; + using LLInventoryItem::getPermissions; using LLInventoryItem::getCreationDate; using LLInventoryItem::setCreationDate; using LLInventoryItem::getCRC32; @@ -287,18 +284,6 @@ public: void fire(const LLUUID& inv_item); }; -class AddFavoriteLandmarkCallback : public LLInventoryCallback -{ -public: - AddFavoriteLandmarkCallback() : mTargetLandmarkId(LLUUID::null) {} - void setTargetLandmarkId(const LLUUID& target_uuid) { mTargetLandmarkId = target_uuid; } - -private: - void fire(const LLUUID& inv_item); - - LLUUID mTargetLandmarkId; -}; - // misc functions //void inventory_reliable_callback(void**, S32 status); -- cgit v1.3 From cb865a7e1300d4ce0bedae7c856fb210b68a43f8 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 27 Jun 2012 18:56:10 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose moved filtering logic to viewmodel --- indra/llui/llnotifications.cpp | 24 +- indra/newview/llfolderview.cpp | 106 ++--- indra/newview/llfolderview.h | 12 +- indra/newview/llfolderviewitem.cpp | 787 +++++++------------------------ indra/newview/llfolderviewitem.h | 82 +--- indra/newview/llfolderviewmodel.h | 194 ++++---- indra/newview/llinventorybridge.cpp | 20 +- indra/newview/llinventorybridge.h | 3 + indra/newview/llinventoryfilter.cpp | 97 ++-- indra/newview/llinventoryfilter.h | 20 +- indra/newview/llinventoryfunctions.cpp | 10 +- indra/newview/llinventorypanel.cpp | 128 ++++- indra/newview/llinventorypanel.h | 6 + indra/newview/llpanellandmarks.cpp | 2 +- indra/newview/llpanelmaininventory.cpp | 2 +- indra/newview/llpanelobjectinventory.cpp | 11 + indra/newview/llsidepanelappearance.cpp | 2 +- indra/newview/lltexturectrl.cpp | 10 +- 18 files changed, 557 insertions(+), 959 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llnotifications.cpp b/indra/llui/llnotifications.cpp index 487a2e5fe7..48128e0b40 100644 --- a/indra/llui/llnotifications.cpp +++ b/indra/llui/llnotifications.cpp @@ -1542,34 +1542,32 @@ void LLNotifications::addFromCallback(const LLSD& name) add(name.asString(), LLSD(), LLSD()); } -LLNotificationPtr LLNotifications::add(const std::string& name, - const LLSD& substitutions, - const LLSD& payload) +LLNotificationPtr LLNotifications::add(const std::string& name, const LLSD& substitutions, const LLSD& payload) { LLNotification::Params::Functor functor_p; functor_p.name = name; return add(LLNotification::Params().name(name).substitutions(substitutions).payload(payload).functor(functor_p)); } -LLNotificationPtr LLNotifications::add(const std::string& name, - const LLSD& substitutions, - const LLSD& payload, - const std::string& functor_name) +LLNotificationPtr LLNotifications::add(const std::string& name, const LLSD& substitutions, const LLSD& payload, const std::string& functor_name) { LLNotification::Params::Functor functor_p; functor_p.name = functor_name; - return add(LLNotification::Params().name(name).substitutions(substitutions).payload(payload).functor(functor_p)); + return add(LLNotification::Params().name(name) + .substitutions(substitutions) + .payload(payload) + .functor(functor_p)); } //virtual -LLNotificationPtr LLNotifications::add(const std::string& name, - const LLSD& substitutions, - const LLSD& payload, - LLNotificationFunctorRegistry::ResponseFunctor functor) +LLNotificationPtr LLNotifications::add(const std::string& name, const LLSD& substitutions, const LLSD& payload, LLNotificationFunctorRegistry::ResponseFunctor functor) { LLNotification::Params::Functor functor_p; functor_p.function = functor; - return add(LLNotification::Params().name(name).substitutions(substitutions).payload(payload).functor(functor_p)); + return add(LLNotification::Params().name(name) + .substitutions(substitutions) + .payload(payload) + .functor(functor_p)); } // generalized add function that takes a parameter block object for more complex instantiations diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index ee8c94a2dd..a37fc7714b 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -181,7 +181,6 @@ LLFolderView::LLFolderView(const Params& p) mNeedsAutoSelect( FALSE ), mAutoSelectOverride(FALSE), mNeedsAutoRename(FALSE), - mDebugFilters(FALSE), mSortOrder(LLInventoryFilter::SO_FOLDERS_BY_NAME), // This gets overridden by a pref immediately mFilter(new LLInventoryFilter(LLInventoryFilter::Params().name(p.title))), mShowSelectionContext(FALSE), @@ -316,7 +315,7 @@ BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) folder->reshape(getRect().getWidth(), 0); folder->setVisible(FALSE); addChild( folder ); - folder->dirtyFilter(); + folder->getViewModelItem()->dirtyFilter(); folder->requestArrange(); return TRUE; } @@ -339,15 +338,14 @@ void LLFolderView::openTopLevelFolders() } // This view grows and shrinks to enclose all of its children items and folders. -// mItemHeight = mDebugFilters ? LLFontGL::getFontMonospace()->getLineHeight() : 0; // *width should be 0 // conform show folder state works -S32 LLFolderView::arrange( S32* unused_width, S32* unused_height, S32 filter_generation ) +S32 LLFolderView::arrange( S32* unused_width, S32* unused_height ) { mMinWidth = 0; S32 target_height; - LLFolderViewFolder::arrange(&mMinWidth, &target_height, mFilter->getFirstSuccessGeneration()); + LLFolderViewFolder::arrange(&mMinWidth, &target_height); LLRect scroll_rect = mScrollContainer->getContentWindowRect(); reshape( llmax(scroll_rect.getWidth(), mMinWidth), llround(mCurHeight) ); @@ -371,15 +369,10 @@ void LLFolderView::filter( LLFolderViewFilter& filter ) LLFastTimer t2(FTM_FILTER); filter.setFilterCount(llclamp(gSavedSettings.getS32("FilterItemsPerFrame"), 1, 5000)); - if (getCompletedFilterGeneration() < filter.getCurrentGeneration()) + if (getLastFilterGeneration() < filter.getCurrentGeneration()) { - mPassedFilter = FALSE; mMinWidth = 0; - LLFolderViewFolder::filter(filter); - } - else - { - mPassedFilter = TRUE; + getViewModelItem()->filter(filter); } } @@ -548,15 +541,15 @@ void LLFolderView::sanitizeSelection() LLFolderViewItem* item = *item_iter; // ensure that each ancestor is open and potentially passes filtering - BOOL visible = item->potentiallyVisible(); // initialize from filter state for this item + BOOL visible = item->getViewModelItem()->potentiallyVisible(); // initialize from filter state for this item // modify with parent open and filters states LLFolderViewFolder* parent_folder = item->getParentFolder(); // Move up through parent folders and see what's visible - while(parent_folder) - { - visible = visible && parent_folder->isOpen() && parent_folder->potentiallyVisible(); - parent_folder = parent_folder->getParentFolder(); - } + while(parent_folder) + { + visible = visible && parent_folder->isOpen() && parent_folder->getViewModelItem()->potentiallyVisible(); + parent_folder = parent_folder->getParentFolder(); + } // deselect item if any ancestor is closed or didn't pass filter requirements. if (!visible) @@ -606,7 +599,7 @@ void LLFolderView::sanitizeSelection() parent_folder; parent_folder = parent_folder->getParentFolder()) { - if (parent_folder->potentiallyVisible()) + if (parent_folder->getViewModelItem()->potentiallyVisible()) { // give initial selection to first ancestor folder that potentially passes the filter if (!new_selection) @@ -684,16 +677,6 @@ void LLFolderView::commitRename( const LLSD& data ) void LLFolderView::draw() { - static LLUIColor sSearchStatusColor = LLUIColorTable::instance().getColor("InventorySearchStatusColor", LLColor4::white); - if (mDebugFilters) - { - std::string current_filter_string = llformat("Current Filter: %d, Least Filter: %d, Auto-accept Filter: %d", - mFilter->getCurrentGeneration(), mFilter->getFirstSuccessGeneration(), mFilter->getFirstRequiredGeneration()); - LLFontGL::getFontMonospace()->renderUTF8(current_filter_string, 0, 2, - getRect().getHeight() - LLFontGL::getFontMonospace()->getLineHeight(), LLColor4(0.5f, 0.5f, 0.8f, 1.f), - LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); - } - //LLFontGL* font = getLabelFontForStyle(mLabelStyle); // if cursor has moved off of me during drag and drop @@ -734,17 +717,14 @@ void LLFolderView::draw() } else if (mShowEmptyMessage) { - if (!mViewModel->contentsReady() || mCompletedFilterGeneration < mFilter->getFirstSuccessGeneration()) + if (!mViewModel->contentsReady() || getLastFilterGeneration() < mFilter->getFirstSuccessGeneration()) { // TODO RN: Get this from filter mStatusText = LLTrans::getString("Searching"); } else { - if (getFilter()) - { - mStatusText = getFilter()->getEmptyLookupMessage(); - } + mStatusText = getFolderViewModel()->getFilter()->getEmptyLookupMessage(); } mStatusTextBox->setValue(mStatusText); mStatusTextBox->setVisible( TRUE ); @@ -763,7 +743,11 @@ void LLFolderView::draw() // This will indirectly call ::arrange and reshape of the status textbox. // We should call this method to also notify parent about required rect. // See EXT-7564, EXT-7047. - arrangeFromRoot(); + S32 height = 0; + S32 width = 0; + S32 total_height = arrange( &width, &height ); + notifyParent(LLSD().with("action", "size_changes").with("height", total_height)); + LLUI::popMatrix(); LLUI::pushMatrix(); LLUI::translate((F32)getRect().mLeft, (F32)getRect().mBottom); @@ -902,16 +886,16 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL } if(parent) { - if (parent->removeItem(item_to_delete)) + if (item_to_delete->remove()) { // change selection on successful delete if (new_selection) { - setSelectionFromRoot(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); + getRoot()->setSelection(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); } else { - setSelectionFromRoot(NULL, mParentPanel->hasFocus()); + getRoot()->setSelection(NULL, mParentPanel->hasFocus()); } } } @@ -937,11 +921,11 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL } if (new_selection) { - setSelectionFromRoot(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); + getRoot()->setSelection(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); } else { - setSelectionFromRoot(NULL, mParentPanel->hasFocus()); + getRoot()->setSelection(NULL, mParentPanel->hasFocus()); } for(S32 i = 0; i < count; ++i) @@ -1386,12 +1370,12 @@ BOOL LLFolderView::handleKeyHere( KEY key, MASK mask ) if (next->isSelected()) { // shrink selection - changeSelectionFromRoot(last_selected, FALSE); + getRoot()->changeSelection(last_selected, FALSE); } else if (last_selected->getParentFolder() == next->getParentFolder()) { // grow selection - changeSelectionFromRoot(next, TRUE); + getRoot()->changeSelection(next, TRUE); } } } @@ -1450,12 +1434,12 @@ BOOL LLFolderView::handleKeyHere( KEY key, MASK mask ) if (prev->isSelected()) { // shrink selection - changeSelectionFromRoot(last_selected, FALSE); + getRoot()->changeSelection(last_selected, FALSE); } else if (last_selected->getParentFolder() == prev->getParentFolder()) { // grow selection - changeSelectionFromRoot(prev, TRUE); + getRoot()->changeSelection(prev, TRUE); } } } @@ -1649,7 +1633,7 @@ BOOL LLFolderView::search(LLFolderViewItem* first_item, const std::string &searc } } - const std::string current_item_label(search_item->getSearchableLabel()); + const std::string current_item_label(search_item->getViewModelItem()->getSearchableName()); S32 search_string_length = llmin(upper_case_string.size(), current_item_label.size()); if (!current_item_label.compare(0, search_string_length, upper_case_string)) { @@ -1959,13 +1943,6 @@ void LLFolderView::doIdle() LLFastTimer t2(FTM_INVENTORY); - BOOL debug_filters = gSavedSettings.getBOOL("DebugInventoryFilters"); - if (debug_filters != getDebugFilters()) - { - mDebugFilters = debug_filters; - arrangeAll(); - } - if (mFilter->isModified() && mFilter->isNotDefault()) { mNeedsAutoSelect = TRUE; @@ -1973,7 +1950,7 @@ void LLFolderView::doIdle() mFilter->clearModified(); // filter to determine visibility before arranging - filterFromRoot(); + filter(*(getFolderViewModel()->getFilter())); // automatically show matching items, and select first one if we had a selection if (mNeedsAutoSelect) @@ -1981,7 +1958,7 @@ void LLFolderView::doIdle() LLFastTimer t3(FTM_AUTO_SELECT); // select new item only if a filtered item not currently selected LLFolderViewItem* selected_itemp = mSelectedItems.empty() ? NULL : mSelectedItems.back(); - if (!mAutoSelectOverride && (!selected_itemp || !selected_itemp->potentiallyHidden())) + if (!mAutoSelectOverride && (!selected_itemp || selected_itemp->passedFilter())) { // these are named variables to get around gcc not binding non-const references to rvalues // and functor application is inherently non-const to allow for stateful functors @@ -1991,7 +1968,7 @@ void LLFolderView::doIdle() // Open filtered folders for folder views with mAutoSelectOverride=TRUE. // Used by LLPlacesFolderView. - if (mAutoSelectOverride && mFilter->showAllResults()) + if (mFilter->showAllResults()) { // these are named variables to get around gcc not binding non-const references to rvalues // and functor application is inherently non-const to allow for stateful functors @@ -2002,7 +1979,7 @@ void LLFolderView::doIdle() scrollToShowSelection(); } - BOOL filter_finished = mCompletedFilterGeneration >= mFilter->getCurrentGeneration() + BOOL filter_finished = getLastFilterGeneration() >= mFilter->getCurrentGeneration() && mViewModel->contentsReady(); if (filter_finished || gFocusMgr.childHasKeyboardFocus(inventory_panel) @@ -2073,7 +2050,10 @@ void LLFolderView::doIdle() sanitizeSelection(); if( needsArrange() ) { - arrangeFromRoot(); + S32 height = 0; + S32 width = 0; + S32 total_height = arrange( &width, &height ); + notifyParent(LLSD().with("action", "size_changes").with("height", total_height)); } } @@ -2278,25 +2258,19 @@ void LLFolderView::onRenamerLost() if( mRenameItem ) { - setSelectionFromRoot( mRenameItem, TRUE ); + setSelection( mRenameItem, TRUE ); mRenameItem = NULL; } } -LLFolderViewFilter* LLFolderView::getFilter() -{ - return mFilter; -} - S32 LLFolderView::getItemHeight() { - S32 debug_height = mDebugFilters ? LLFontGL::getFontMonospace()->getLineHeight() : 0; if(!hasVisibleChildren()) { //We need to display status textbox, let's reserve some place for it - return llmax(debug_height, mStatusTextBox->getTextPixelHeight()); + return llmax(0, mStatusTextBox->getTextPixelHeight()); } - return debug_height; + return 0; } //TODO RN: move to llfolderviewmodel.cpp file diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 8b58da9f45..d261a5967d 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -110,9 +110,11 @@ public: virtual BOOL canFocusChildren() const; + virtual const LLFolderView* getRoot() const { return this; } virtual LLFolderView* getRoot() { return this; } LLFolderViewModelInterface* getFolderViewModel() { return mViewModel; } + const LLFolderViewModelInterface* getFolderViewModel() const { return mViewModel; } void setFilterPermMask(PermissionMask filter_perm_mask); @@ -120,9 +122,6 @@ public: void setSelectCallback(const signal_t::slot_type& cb) { mSelectSignal.connect(cb); } void setReshapeCallback(const signal_t::slot_type& cb) { mReshapeSignal.connect(cb); } - // filter is never null - LLFolderViewFilter* getFilter(); - bool getAllowMultiSelect() { return mAllowMultiSelect; } // Close all folders in the view @@ -133,7 +132,7 @@ public: // Find width and height of this object and its children. Also // makes sure that this view and its children are the right size. - virtual S32 arrange( S32* width, S32* height, S32 filter_generation ); + virtual S32 arrange( S32* width, S32* height ); virtual S32 getItemHeight(); void arrangeAll() { mArrangeGeneration++; } @@ -147,7 +146,7 @@ public: // Record the selected item and pass it down the hierarchy. virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, - BOOL take_keyboard_focus); + BOOL take_keyboard_focus = TRUE); // This method is used to toggle the selection of an item. Walks // children, and keeps track of selected objects. @@ -244,8 +243,6 @@ public: void setCallbackRegistrar(LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* registrar) { mCallbackRegistrar = registrar; } - BOOL getDebugFilters() { return mDebugFilters; } - LLPanel* getParentPanel() { return mParentPanel; } // DEBUG only void dumpSelectionInformation(); @@ -299,7 +296,6 @@ protected: bool mUseLabelSuffix; bool mShowItemLinkOverlays; - BOOL mDebugFilters; U32 mSortOrder; LLDepthStack mAutoOpenItems; LLFolderViewFolder* mAutoOpenCandidate; diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 3f0b493986..f65a13be1e 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -114,8 +114,6 @@ LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) mHasVisibleChildren(FALSE), mIndentation(0), mItemHeight(p.item_height), - mPassedFilter(FALSE), - mLastFilterGeneration(-1), //TODO RN: create interface for string highlighting //mStringMatchOffset(std::string::npos), mControlLabelRotation(0.f), @@ -146,6 +144,10 @@ LLFolderView* LLFolderViewItem::getRoot() return mRoot; } +const LLFolderView* LLFolderViewItem::getRoot() const +{ + return mRoot; +} // Returns true if this object is a child (or grandchild, etc.) of potential_ancestor. BOOL LLFolderViewItem::isDescendantOf( const LLFolderViewFolder* potential_ancestor ) { @@ -207,99 +209,47 @@ LLFolderViewItem* LLFolderViewItem::getPreviousOpenNode(BOOL include_children) return itemp; } -// is this item something we think we should be showing? -// for example, if we haven't gotten around to filtering it yet, then the answer is yes -// until we find out otherwise -BOOL LLFolderViewItem::potentiallyVisible() -{ - return getFiltered() // we've passed the filter - || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); // or we don't know yet -} - -BOOL LLFolderViewItem::potentiallyHidden() +BOOL LLFolderViewItem::passedFilter(S32 filter_generation) { - return !mPassedFilter // didn't pass the filter - || getLastFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); // or we don't know yet -} - -BOOL LLFolderViewItem::getFiltered() -{ - return mPassedFilter && mLastFilterGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); -} - -BOOL LLFolderViewItem::getFiltered(S32 filter_generation) -{ - return mPassedFilter && mLastFilterGeneration >= filter_generation; -} - -void LLFolderViewItem::setFiltered(BOOL filtered, S32 filter_generation) -{ - mPassedFilter = filtered; - mLastFilterGeneration = filter_generation; + return getViewModelItem()->passedFilter(filter_generation); } void LLFolderViewItem::refresh() { - if(!getViewModelItem()) return; + LLFolderViewModelItem& vmi = *getViewModelItem(); - mLabel = getViewModelItem()->getDisplayName(); + mLabel = vmi.getDisplayName(); setToolTip(mLabel); - mIcon = getViewModelItem()->getIcon(); - mIconOpen = getViewModelItem()->getIconOpen(); - mIconOverlay = getViewModelItem()->getIconOverlay(); + mIcon = vmi.getIcon(); + mIconOpen = vmi.getIconOpen(); + mIconOverlay = vmi.getIconOverlay(); if (mRoot->useLabelSuffix()) { - mLabelStyle = getViewModelItem()->getLabelStyle(); - mLabelSuffix = getViewModelItem()->getLabelSuffix(); + mLabelStyle = vmi.getLabelStyle(); + mLabelSuffix = vmi.getLabelSuffix(); } - std::string searchable_label(mLabel); - searchable_label.append(mLabelSuffix); - LLStringUtil::toUpper(searchable_label); + //TODO RN: make sure this logic still fires + //std::string searchable_label(mLabel); + //searchable_label.append(mLabelSuffix); + //LLStringUtil::toUpper(searchable_label); - if (mSearchableLabel.compare(searchable_label)) - { - mSearchableLabel.assign(searchable_label); - dirtyFilter(); - // some part of label has changed, so overall width has potentially changed, and sort order too - if (mParentFolder) - { - mParentFolder->requestSort(); - mParentFolder->requestArrange(); - } - } + //if (mSearchableLabel.compare(searchable_label)) + //{ + // mSearchableLabel.assign(searchable_label); + // vmi.dirtyFilter(); + // // some part of label has changed, so overall width has potentially changed, and sort order too + // if (mParentFolder) + // { + // mParentFolder->requestSort(); + // mParentFolder->requestArrange(); + // } + //} mLabelWidthDirty = true; - dirtyFilter(); -} - -// This function is called when items are added or view filters change. It's -// implemented here but called by derived classes when folding the -// views. -void LLFolderViewItem::filterFromRoot( void ) -{ - LLFolderViewItem* root = getRoot(); - - root->filter(*((LLFolderView*)root)->getFilter()); -} - -// This function is called when the folder view is dirty. It's -// implemented here but called by derived classes when folding the -// views. -void LLFolderViewItem::arrangeFromRoot() -{ - LLFolderViewItem* root = getRoot(); - - S32 height = 0; - S32 width = 0; - S32 total_height = root->arrange( &width, &height, 0 ); - - LLSD params; - params["action"] = "size_changes"; - params["height"] = total_height; - getParent()->notifyParent(params); + vmi.dirtyFilter(); } // Utility function for LLFolderView @@ -313,7 +263,7 @@ void LLFolderViewItem::arrangeAndSet(BOOL set_selection, } if(set_selection) { - setSelectionFromRoot(this, TRUE, take_keyboard_focus); + getRoot()->setSelection(this, TRUE, take_keyboard_focus); if(root) { root->scrollToShowSelection(); @@ -321,22 +271,6 @@ void LLFolderViewItem::arrangeAndSet(BOOL set_selection, } } -// This function clears the currently selected item, and records the -// specified selected item appropriately for display and use in the -// UI. If open is TRUE, then folders are opened up along the way to -// the selection. -void LLFolderViewItem::setSelectionFromRoot(LLFolderViewItem* selection, - BOOL openitem, - BOOL take_keyboard_focus) -{ - getRoot()->setSelection(selection, openitem, take_keyboard_focus); -} - -// helper function to change the selection from the root. -void LLFolderViewItem::changeSelectionFromRoot(LLFolderViewItem* selection, BOOL selected) -{ - getRoot()->changeSelection(selection, selected); -} std::set LLFolderViewItem::getSelectionList() const { @@ -347,18 +281,13 @@ std::set LLFolderViewItem::getSelectionList() const // addToFolder() returns TRUE if it succeeds. FALSE otherwise BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) { - if (!folder) - { - return FALSE; - } - mParentFolder = folder; return folder->addItem(this); } // Finds width and height of this object and its children. Also // makes sure that this view and its children are the right size. -S32 LLFolderViewItem::arrange( S32* width, S32* height, S32 filter_generation) +S32 LLFolderViewItem::arrange( S32* width, S32* height ) { const Params& p = LLUICtrlFactory::getDefaultParams(); S32 indentation = p.folder_indentation(); @@ -390,41 +319,6 @@ S32 LLFolderViewItem::getItemHeight() return mItemHeight; } -void LLFolderViewItem::filter( LLFolderViewFilter& filter) -{ - const BOOL previous_passed_filter = mPassedFilter; - const BOOL passed_filter = filter.check(this); - - // If our visibility will change as a result of this filter, then - // we need to be rearranged in our parent folder - if (mParentFolder) - { - if (getVisible() != passed_filter - || previous_passed_filter != passed_filter ) - mParentFolder->requestArrange(); - } - - setFiltered(passed_filter, filter.getCurrentGeneration()); - //TODO RN: create interface for string highlighting - //mStringMatchOffset = filter.getStringMatchOffset(this); - filter.decrementFilterCount(); - - if (getRoot()->getDebugFilters()) - { - mStatusText = llformat("%d", mLastFilterGeneration); - } -} - -void LLFolderViewItem::dirtyFilter() -{ - mLastFilterGeneration = -1; - // bubble up dirty flag all the way to root - if (getParentFolder()) - { - getParentFolder()->setCompletedFilterGeneration(-1, TRUE); - } -} - // *TODO: This can be optimized a lot by simply recording that it is // selected in the appropriate places, and assuming that set selection // means 'deselect' for a leaf item. Do this optimization after @@ -469,45 +363,31 @@ void LLFolderViewItem::selectItem(void) { if (mIsSelected == FALSE) { - if (getViewModelItem()) - { - getViewModelItem()->selectItem(); - } + getViewModelItem()->selectItem(); mIsSelected = TRUE; } } BOOL LLFolderViewItem::isMovable() { - if( getViewModelItem() ) - { - return getViewModelItem()->isItemMovable(); - } - else - { - return TRUE; - } + return getViewModelItem()->isItemMovable(); } BOOL LLFolderViewItem::isRemovable() { - if( getViewModelItem() ) - { - return getViewModelItem()->isItemRemovable(); - } - else - { - return TRUE; - } + return getViewModelItem()->isItemRemovable(); } void LLFolderViewItem::destroyView() { + getRoot()->removeFromSelectionList(this); + if (mParentFolder) { // removeView deletes me - mParentFolder->removeView(this); + mParentFolder->extractItem(this); } + delete this; } // Call through to the viewed object and return true if it can be @@ -519,58 +399,36 @@ BOOL LLFolderViewItem::remove() { return FALSE; } - if(getViewModelItem()) - { - return getViewModelItem()->removeItem(); - } - return TRUE; + return getViewModelItem()->removeItem(); } // Build an appropriate context menu for the item. void LLFolderViewItem::buildContextMenu(LLMenuGL& menu, U32 flags) { - if(getViewModelItem()) - { - getViewModelItem()->buildContextMenu(menu, flags); - } + getViewModelItem()->buildContextMenu(menu, flags); } void LLFolderViewItem::openItem( void ) { - if( getViewModelItem() ) - { - getViewModelItem()->openItem(); - } + getViewModelItem()->openItem(); } void LLFolderViewItem::rename(const std::string& new_name) { if( !new_name.empty() ) { - if( getViewModelItem() ) - { - getViewModelItem()->renameItem(new_name); + getViewModelItem()->renameItem(new_name); - if(mParentFolder) - { - mParentFolder->requestSort(); - } + if(mParentFolder) + { + mParentFolder->requestSort(); } } } -const std::string& LLFolderViewItem::getSearchableLabel() const -{ - return mSearchableLabel; -} - const std::string& LLFolderViewItem::getName( void ) const { - if(getViewModelItem()) - { - return getViewModelItem()->getName(); - } - return LLStringUtil::null; + return getViewModelItem()->getName(); } // LLView functionality @@ -578,7 +436,7 @@ BOOL LLFolderViewItem::handleRightMouseDown( S32 x, S32 y, MASK mask ) { if(!mIsSelected) { - setSelectionFromRoot(this, FALSE); + getRoot()->setSelection(this, FALSE); } make_ui_sound("UISndClick"); return TRUE; @@ -599,7 +457,7 @@ BOOL LLFolderViewItem::handleMouseDown( S32 x, S32 y, MASK mask ) { if(mask & MASK_CONTROL) { - changeSelectionFromRoot(this, !mIsSelected); + getRoot()->changeSelection(this, !mIsSelected); } else if (mask & MASK_SHIFT) { @@ -607,7 +465,7 @@ BOOL LLFolderViewItem::handleMouseDown( S32 x, S32 y, MASK mask ) } else { - setSelectionFromRoot(this, FALSE); + getRoot()->setSelection(this, FALSE); } make_ui_sound("UISndClick"); } @@ -646,14 +504,7 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) // *TODO: push this into listener and remove // dependency on llagent - if (getViewModelItem()) - { - src = getViewModelItem()->getDragSource(); - } - else - { - src = LLToolDragAndDrop::SOURCE_VIEWER; - } + src = getViewModelItem()->getDragSource(); can_drag = root->startDrag(src); if (can_drag) @@ -695,10 +546,7 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) BOOL LLFolderViewItem::handleDoubleClick( S32 x, S32 y, MASK mask ) { - if (getViewModelItem()) - { - getViewModelItem()->openItem(); - } + getViewModelItem()->openItem(); return TRUE; } @@ -715,7 +563,7 @@ BOOL LLFolderViewItem::handleMouseUp( S32 x, S32 y, MASK mask ) //...then select if(mask & MASK_CONTROL) { - changeSelectionFromRoot(this, !mIsSelected); + getRoot()->changeSelection(this, !mIsSelected); } else if (mask & MASK_SHIFT) { @@ -723,7 +571,7 @@ BOOL LLFolderViewItem::handleMouseUp( S32 x, S32 y, MASK mask ) } else { - setSelectionFromRoot(this, FALSE); + getRoot()->setSelection(this, FALSE); } } @@ -748,21 +596,17 @@ BOOL LLFolderViewItem::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, EAcceptance* accept, std::string& tooltip_msg) { - BOOL accepted = FALSE; BOOL handled = FALSE; - if(getViewModelItem()) + BOOL accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); + handled = accepted; + if (accepted) { - accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); - handled = accepted; - if (accepted) - { - mDragAndDropTarget = TRUE; - *accept = ACCEPT_YES_MULTI; - } - else - { - *accept = ACCEPT_NO; - } + mDragAndDropTarget = TRUE; + *accept = ACCEPT_YES_MULTI; + } + else + { + *accept = ACCEPT_NO; } if(mParentFolder && !handled) { @@ -781,17 +625,17 @@ BOOL LLFolderViewItem::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, void LLFolderViewItem::draw() { - static LLUIColor sFgColor = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); - static LLUIColor sHighlightBgColor = LLUIColorTable::instance().getColor("MenuItemHighlightBgColor", DEFAULT_WHITE); - static LLUIColor sHighlightFgColor = LLUIColorTable::instance().getColor("MenuItemHighlightFgColor", DEFAULT_WHITE); + static LLUIColor sFgColor = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); + static LLUIColor sHighlightBgColor = LLUIColorTable::instance().getColor("MenuItemHighlightBgColor", DEFAULT_WHITE); + static LLUIColor sHighlightFgColor = LLUIColorTable::instance().getColor("MenuItemHighlightFgColor", DEFAULT_WHITE); static LLUIColor sFocusOutlineColor = LLUIColorTable::instance().getColor("InventoryFocusOutlineColor", DEFAULT_WHITE); - static LLUIColor sFilterBGColor = LLUIColorTable::instance().getColor("FilterBackgroundColor", DEFAULT_WHITE); - static LLUIColor sFilterTextColor = LLUIColorTable::instance().getColor("FilterTextColor", DEFAULT_WHITE); - static LLUIColor sSuffixColor = LLUIColorTable::instance().getColor("InventoryItemColor", DEFAULT_WHITE); - static LLUIColor sLibraryColor = LLUIColorTable::instance().getColor("InventoryItemLibraryColor", DEFAULT_WHITE); - static LLUIColor sLinkColor = LLUIColorTable::instance().getColor("InventoryItemLinkColor", DEFAULT_WHITE); + static LLUIColor sFilterBGColor = LLUIColorTable::instance().getColor("FilterBackgroundColor", DEFAULT_WHITE); + static LLUIColor sFilterTextColor = LLUIColorTable::instance().getColor("FilterTextColor", DEFAULT_WHITE); + static LLUIColor sSuffixColor = LLUIColorTable::instance().getColor("InventoryItemColor", DEFAULT_WHITE); + static LLUIColor sLibraryColor = LLUIColorTable::instance().getColor("InventoryItemLibraryColor", DEFAULT_WHITE); + static LLUIColor sLinkColor = LLUIColorTable::instance().getColor("InventoryItemLinkColor", DEFAULT_WHITE); static LLUIColor sSearchStatusColor = LLUIColorTable::instance().getColor("InventorySearchStatusColor", DEFAULT_WHITE); - static LLUIColor sMouseOverColor = LLUIColorTable::instance().getColor("InventoryMouseOverColor", DEFAULT_WHITE); + static LLUIColor sMouseOverColor = LLUIColorTable::instance().getColor("InventoryMouseOverColor", DEFAULT_WHITE); const Params& default_params = LLUICtrlFactory::getDefaultParams(); const S32 TOP_PAD = default_params.item_top_pad; @@ -929,29 +773,12 @@ void LLFolderViewItem::draw() LLColor4 color = (mIsSelected && filled) ? sHighlightFgColor : sFgColor; //TODO RN: implement this in terms of getColor() //if (highlight_link) color = sLinkColor; - //if (getViewModelItem() && gInventory.isObjectDescendentOf(getViewModelItem()->getUUID(), gInventory.getLibraryRootFolderID())) color = sLibraryColor; + //if (gInventory.isObjectDescendentOf(getViewModelItem()->getUUID(), gInventory.getLibraryRootFolderID())) color = sLibraryColor; F32 right_x = 0; F32 y = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; F32 text_left = (F32)(ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mIndentation); - //--------------------------------------------------------------------------------// - // Highlight filtered text - // - if (getRoot()->getDebugFilters()) - { - if (!getFiltered() && !getViewModelItem()->hasChildren()) - { - color.mV[VALPHA] *= 0.5f; - } - LLColor4 filter_color = mLastFilterGeneration >= getRoot()->getFilter()->getCurrentGeneration() ? - LLColor4(0.5f, 0.8f, 0.5f, 1.f) : - LLColor4(0.8f, 0.5f, 0.5f, 1.f); - LLFontGL::getFontMonospace()->renderUTF8(mStatusText, 0, text_left, y, filter_color, - LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, - S32_MAX, S32_MAX, &right_x, FALSE ); - text_left = right_x; - } //--------------------------------------------------------------------------------// // Draw the actual label text // @@ -997,6 +824,22 @@ void LLFolderViewItem::draw() //} } +const LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) const +{ + return getRoot()->getFolderViewModel(); +} + +LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) +{ + return getRoot()->getFolderViewModel(); +} + +S32 LLFolderViewItem::getLastFilterGeneration() const +{ + return getViewModelItem()->getLastFilterGeneration(); +} + + ///---------------------------------------------------------------------------- /// Class LLFolderViewFolder @@ -1010,10 +853,7 @@ LLFolderViewFolder::LLFolderViewFolder( const LLFolderViewItem::Params& p ): mTargetHeight(0.f), mAutoOpenCountdown(0.f), mLastArrangeGeneration( -1 ), - mLastCalculatedWidth(0), - mCompletedFilterGeneration(-1), - mMostFilteredDescendantGeneration(-1), - mPassedFolderFilter(FALSE) + mLastCalculatedWidth(0) { } @@ -1025,25 +865,9 @@ LLFolderViewFolder::~LLFolderViewFolder( void ) gFocusMgr.releaseFocusIfNeeded( this ); // calls onCommit() } -void LLFolderViewFolder::setFilteredFolder(bool filtered, S32 filter_generation) -{ - mPassedFolderFilter = filtered; - mLastFilterGeneration = filter_generation; -} - -bool LLFolderViewFolder::getFilteredFolder(S32 filter_generation) -{ - return mPassedFolderFilter && mLastFilterGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); -} - // addToFolder() returns TRUE if it succeeds. FALSE otherwise BOOL LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder) { - if (!folder) - { - return FALSE; - } - mParentFolder = folder; return folder->addFolder(this); } @@ -1051,7 +875,7 @@ static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); // Finds width and height of this object and its children. Also // makes sure that this view and its children are the right size. -S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) +S32 LLFolderViewFolder::arrange( S32* width, S32* height ) { // sort before laying out contents getRoot()->getFolderViewModel()->sort(this); @@ -1060,7 +884,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) // evaluate mHasVisibleChildren mHasVisibleChildren = false; - if (hasFilteredDescendants(filter_generation)) + if (getViewModelItem()->descendantsPassedFilter()) { // We have to verify that there's at least one child that's not filtered out bool found = false; @@ -1068,7 +892,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) for (items_t::iterator iit = mItems.begin(); iit != mItems.end(); ++iit) { LLFolderViewItem* itemp = (*iit); - found = (itemp->getFiltered(filter_generation)); + found = itemp->passedFilter(); if (found) break; } @@ -1078,9 +902,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) for (folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) { LLFolderViewFolder* folderp = (*fit); - found = ( (folderp->getFiltered(filter_generation) - || (folderp->getFilteredFolder(filter_generation) - && folderp->hasFilteredDescendants(filter_generation)))); + found = folderp->passedFilter(); if (found) break; } @@ -1090,7 +912,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) } // calculate height as a single item (without any children), and reshapes rectangle to match - LLFolderViewItem::arrange( width, height, filter_generation ); + LLFolderViewItem::arrange( width, height ); // clamp existing animated height so as to never get smaller than a single item mCurHeight = llmax((F32)*height, mCurHeight); @@ -1113,16 +935,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) for(folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) { LLFolderViewFolder* folderp = (*fit); - if (getRoot()->getDebugFilters()) - { - folderp->setVisible(TRUE); - } - else - { - folderp->setVisible( folderp->getFiltered(filter_generation) - || (folderp->getFilteredFolder(filter_generation) - && folderp->hasFilteredDescendants(filter_generation))); // passed filter or has descendants that passed filter - } + folderp->setVisible(folderp->passedFilter()); // passed filter or has descendants that passed filter if (folderp->getVisible()) { @@ -1130,7 +943,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) S32 child_height = 0; S32 child_top = parent_item_height - llround(running_height); - target_height += folderp->arrange( &child_width, &child_height, filter_generation ); + target_height += folderp->arrange( &child_width, &child_height ); running_height += (F32)child_height; *width = llmax(*width, child_width); @@ -1141,14 +954,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) iit != mItems.end(); ++iit) { LLFolderViewItem* itemp = (*iit); - if (getRoot()->getDebugFilters()) - { - itemp->setVisible(TRUE); - } - else - { - itemp->setVisible(itemp->getFiltered(filter_generation)); - } + itemp->setVisible(itemp->passedFilter()); if (itemp->getVisible()) { @@ -1156,7 +962,7 @@ S32 LLFolderViewFolder::arrange( S32* width, S32* height, S32 filter_generation) S32 child_height = 0; S32 child_top = parent_item_height - llround(running_height); - target_height += itemp->arrange( &child_width, &child_height, filter_generation ); + target_height += itemp->arrange( &child_width, &child_height ); // don't change width, as this item is as wide as its parent folder by construction itemp->reshape( itemp->getRect().getWidth(), child_height); @@ -1234,234 +1040,21 @@ void LLFolderViewFolder::requestSort() getViewModelItem()->requestSort(); } -void LLFolderViewFolder::setCompletedFilterGeneration(S32 generation, BOOL recurse_up) -{ - //mMostFilteredDescendantGeneration = llmin(mMostFilteredDescendantGeneration, generation); - mCompletedFilterGeneration = generation; - // only aggregate up if we are a lower (older) value - if (recurse_up - && mParentFolder - && generation < mParentFolder->getCompletedFilterGeneration()) - { - mParentFolder->setCompletedFilterGeneration(generation, TRUE); - } -} +//TODO RN: get height resetting working +//void LLFolderViewFolder::setPassedFilter(BOOL passed, BOOL passed_folder, S32 filter_generation) +//{ +// // if this folder is now filtered, but wasn't before +// // (it just passed) +// if (passed && !passedFilter(filter_generation)) +// { +// // reset current height, because last time we drew it +// // it might have had more visible items than now +// mCurHeight = 0.f; +// } +// +// LLFolderViewItem::setPassedFilter(passed, passed_folder, filter_generation); +//} -void LLFolderViewFolder::filter( LLFolderViewFilter& filter) -{ - S32 filter_generation = filter.getCurrentGeneration(); - // if failed to pass filter newer than must_pass_generation - // you will automatically fail this time, so we only - // check against items that have passed the filter - S32 must_pass_generation = filter.getFirstRequiredGeneration(); - - bool autoopen_folders = filter.showAllResults(); - - // if we have already been filtered against this generation, skip out - if (getCompletedFilterGeneration() >= filter_generation) - { - return; - } - - // filter folder itself - if (getLastFilterGeneration() < filter_generation) - { - if (getLastFilterGeneration() >= must_pass_generation // folder has been compared to a valid precursor filter - && !mPassedFilter) // and did not pass the filter - { - // go ahead and flag this folder as done - mLastFilterGeneration = filter_generation; - //TODO RN: create interface for string highlighting - //mStringMatchOffset = std::string::npos; - } - else // filter self only on first pass through - { - // filter against folder rules - filterFolder(filter); - // and then item rules - LLFolderViewItem::filter( filter ); - } - } - - if (getRoot()->getDebugFilters()) - { - mStatusText = llformat("%d", mLastFilterGeneration); - mStatusText += llformat("(%d)", mCompletedFilterGeneration); - mStatusText += llformat("+%d", mMostFilteredDescendantGeneration); - } - - // all descendants have been filtered later than must pass generation - // but none passed - if(getCompletedFilterGeneration() >= must_pass_generation && !hasFilteredDescendants(must_pass_generation)) - { - // don't traverse children if we've already filtered them since must_pass_generation - // and came back with nothing - return; - } - - // we entered here with at least one filter iteration left - // check to see if we have any more before continuing on to children - if (filter.getFilterCount() < 0) - { - return; - } - - // now query children - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end(); - ++iter) - { - LLFolderViewFolder* folder = (*iter); - // have we run out of iterations this frame? - if (filter.getFilterCount() < 0) - { - break; - } - - // mMostFilteredDescendantGeneration might have been reset - // in which case we need to update it even for folders that - // don't need to be filtered anymore - if (folder->getCompletedFilterGeneration() >= filter_generation) - { - // track latest generation to pass any child items - if (folder->getFiltered() || folder->hasFilteredDescendants(filter.getFirstSuccessGeneration())) - { - mMostFilteredDescendantGeneration = filter_generation; - requestArrange(); - } - // just skip it, it has already been filtered - continue; - } - - // update this folders filter status (and children) - folder->filter( filter ); - - // track latest generation to pass any child items - if (folder->getFiltered() || folder->hasFilteredDescendants(filter_generation)) - { - mMostFilteredDescendantGeneration = filter_generation; - requestArrange(); - if (getRoot()->needsAutoSelect() && autoopen_folders) - { - folder->setOpenArrangeRecursively(TRUE); - } - } - } - - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end(); - ++iter) - { - LLFolderViewItem* item = (*iter); - if (filter.getFilterCount() < 0) - { - break; - } - if (item->getLastFilterGeneration() >= filter_generation) - { - if (item->getFiltered()) - { - mMostFilteredDescendantGeneration = filter_generation; - requestArrange(); - } - continue; - } - - if (item->getLastFilterGeneration() >= must_pass_generation && - !item->getFiltered(must_pass_generation)) - { - // failed to pass an earlier filter that was a subset of the current one - // go ahead and flag this item as done - item->setFiltered(FALSE, filter_generation); - continue; - } - - item->filter( filter ); - - if (item->getFiltered(filter.getFirstSuccessGeneration())) - { - mMostFilteredDescendantGeneration = filter_generation; - requestArrange(); - } - } - - // if we didn't use all filter iterations - // that means we filtered all of our descendants - // instead of exhausting the filter count for this frame - if (filter.getFilterCount() > 0) - { - // flag this folder as having completed filter pass for all descendants - setCompletedFilterGeneration(filter_generation, FALSE/*dont recurse up to root*/); - } -} - -void LLFolderViewFolder::filterFolder(LLFolderViewFilter& filter) -{ - const BOOL previous_passed_filter = mPassedFolderFilter; - const BOOL passed_filter = filter.checkFolder(this); - - // If our visibility will change as a result of this filter, then - // we need to be rearranged in our parent folder - if (mParentFolder) - { - if (getVisible() != passed_filter - || previous_passed_filter != passed_filter ) - { - mParentFolder->requestArrange(); - } - } - - setFilteredFolder(passed_filter, filter.getCurrentGeneration()); - filter.decrementFilterCount(); - - if (getRoot()->getDebugFilters()) - { - mStatusText = llformat("%d", mLastFilterGeneration); - } -} - -void LLFolderViewFolder::setFiltered(BOOL filtered, S32 filter_generation) -{ - // if this folder is now filtered, but wasn't before - // (it just passed) - if (filtered && !mPassedFilter) - { - // reset current height, because last time we drew it - // it might have had more visible items than now - mCurHeight = 0.f; - } - - LLFolderViewItem::setFiltered(filtered, filter_generation); -} - -void LLFolderViewFolder::dirtyFilter() -{ - // we're a folder, so invalidate our completed generation - setCompletedFilterGeneration(-1, FALSE); - LLFolderViewItem::dirtyFilter(); -} - -BOOL LLFolderViewFolder::getFiltered() -{ - return getFilteredFolder(getRoot()->getFilter()->getFirstSuccessGeneration()) - && LLFolderViewItem::getFiltered(); -} - -BOOL LLFolderViewFolder::getFiltered(S32 filter_generation) -{ - return getFilteredFolder(filter_generation) && LLFolderViewItem::getFiltered(filter_generation); -} - -BOOL LLFolderViewFolder::hasFilteredDescendants(S32 filter_generation) -{ - return mMostFilteredDescendantGeneration >= filter_generation; -} - - -BOOL LLFolderViewFolder::hasFilteredDescendants() -{ - return mMostFilteredDescendantGeneration >= getRoot()->getFilter()->getFirstSuccessGeneration(); -} // Passes selection information on to children and record selection // information if necessary. @@ -1824,39 +1417,7 @@ void LLFolderViewFolder::destroyView() folderp->destroyView(); // removes entry from mFolders } - if (mParentFolder) - { - mParentFolder->removeView(this); - } -} - -// remove the specified item (and any children) if possible. Return -// TRUE if the item was deleted. -BOOL LLFolderViewFolder::removeItem(LLFolderViewItem* item) -{ - if(item->remove()) - { - return TRUE; - } - return FALSE; -} - -// simply remove the view (and any children) Don't bother telling the -// listeners. -void LLFolderViewFolder::removeView(LLFolderViewItem* item) -{ - if (!item || item->getParentFolder() != this) - { - return; - } - // deselect without traversing hierarchy - if (item->isSelected()) - { - item->deselectItem(); - } - getRoot()->removeFromSelectionList(item); - extractItem(item); - delete item; + LLFolderViewItem::destroyView(); } // extractItem() removes the specified item from the folder, but @@ -1882,7 +1443,7 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) mItems.erase(it); } //item has been removed, need to update filter - dirtyFilter(); + getViewModelItem()->dirtyFilter(); //because an item is going away regardless of filter status, force rearrange requestArrange(); removeChild(item); @@ -1890,31 +1451,28 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) BOOL LLFolderViewFolder::isMovable() { - if( getViewModelItem() ) + if( !(getViewModelItem()->isItemMovable()) ) { - if( !(getViewModelItem()->isItemMovable()) ) - { - return FALSE; - } + return FALSE; + } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + if(!(*iit)->isMovable()) { - items_t::iterator iit = iter++; - if(!(*iit)->isMovable()) - { - return FALSE; - } + return FALSE; } + } - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + if(!(*fit)->isMovable()) { - folders_t::iterator fit = iter++; - if(!(*fit)->isMovable()) - { - return FALSE; - } + return FALSE; } } return TRUE; @@ -1923,31 +1481,28 @@ BOOL LLFolderViewFolder::isMovable() BOOL LLFolderViewFolder::isRemovable() { - if( getViewModelItem() ) + if( !(getViewModelItem()->isItemRemovable()) ) { - if( !(getViewModelItem()->isItemRemovable()) ) - { - return FALSE; - } + return FALSE; + } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + if(!(*iit)->isRemovable()) { - items_t::iterator iit = iter++; - if(!(*iit)->isRemovable()) - { - return FALSE; - } + return FALSE; } + } - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + if(!(*fit)->isRemovable()) { - folders_t::iterator fit = iter++; - if(!(*fit)->isRemovable()) - { - return FALSE; - } + return FALSE; } } return TRUE; @@ -1956,6 +1511,12 @@ BOOL LLFolderViewFolder::isRemovable() // this is an internal method used for adding items to folders. BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) { + if (item->getParentFolder()) + { + item->getParentFolder()->extractItem(item); + } + item->setParentFolder(this); + mItems.push_back(item); item->setRect(LLRect(0, 0, getRect().getWidth(), 0)); @@ -1963,12 +1524,14 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) addChild(item); - item->dirtyFilter(); + item->getViewModelItem()->dirtyFilter(); // Handle sorting requestArrange(); requestSort(); + getViewModelItem()->addChild(item->getViewModelItem()); + //TODO RN - make sort bubble up as long as parent Folder doesn't have anything matching sort criteria //// Traverse parent folders and update creation date and resort, if necessary //LLFolderViewFolder* parentp = this; @@ -1989,16 +1552,23 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) // this is an internal method used for adding items to folders. BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) { + if (folder->mParentFolder) + { + folder->mParentFolder->extractItem(folder); + } + folder->mParentFolder = this; mFolders.push_back(folder); folder->setOrigin(0, 0); folder->reshape(getRect().getWidth(), 0); folder->setVisible(FALSE); addChild( folder ); - folder->dirtyFilter(); + folder->getViewModelItem()->dirtyFilter(); // rearrange all descendants too, as our indentation level might have changed folder->requestArrange(); requestSort(); + getViewModelItem()->addChild(folder->getViewModelItem()); + return TRUE; } @@ -2027,16 +1597,13 @@ void LLFolderViewFolder::setOpenArrangeRecursively(BOOL openitem, ERecurseType r { BOOL was_open = isOpen(); mIsOpen = openitem; - if (getViewModelItem()) + if(!was_open && openitem) { - if(!was_open && openitem) - { - getViewModelItem()->openItem(); - } - else if(was_open && !openitem) - { - getViewModelItem()->closeItem(); - } + getViewModelItem()->openItem(); + } + else if(was_open && !openitem) + { + getViewModelItem()->closeItem(); } if (recurse == RECURSE_DOWN || recurse == RECURSE_UP_DOWN) @@ -2068,7 +1635,7 @@ BOOL LLFolderViewFolder::handleDragAndDropFromChild(MASK mask, EAcceptance* accept, std::string& tooltip_msg) { - BOOL accepted = mListener && mListener->dragOrDrop(mask,drop,c_type,cargo_data, tooltip_msg); + BOOL accepted = mListener->dragOrDrop(mask,drop,c_type,cargo_data, tooltip_msg); if (accepted) { mDragAndDropTarget = TRUE; @@ -2156,7 +1723,7 @@ BOOL LLFolderViewFolder::handleDragAndDropToThisFolder(MASK mask, EAcceptance* accept, std::string& tooltip_msg) { - BOOL accepted = getViewModelItem() && getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); + BOOL accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); if (accepted) { @@ -2259,7 +1826,7 @@ BOOL LLFolderViewFolder::handleDoubleClick( S32 x, S32 y, MASK mask ) } else { - setSelectionFromRoot(this, FALSE); + getRoot()->setSelection(this, FALSE); toggleOpen(); } handled = TRUE; @@ -2293,16 +1860,6 @@ void LLFolderViewFolder::draw() mExpanderHighlighted = FALSE; } -BOOL LLFolderViewFolder::potentiallyVisible() -{ - // folder should be visible by it's own filter status - return LLFolderViewItem::potentiallyVisible() - // or one or more of its descendants have passed the minimum filter requirement - || hasFilteredDescendants() - // or not all of its descendants have been checked against minimum filter requirement - || getCompletedFilterGeneration() < getRoot()->getFilter()->getFirstSuccessGeneration(); -} - // this does prefix traversal, as folders are listed above their contents LLFolderViewItem* LLFolderViewFolder::getNextFromChild( LLFolderViewItem* item, BOOL include_children ) { diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index fd2948f34e..7e48969826 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -35,6 +35,7 @@ class LLFolderViewModelItem; class LLFolderViewFolder; class LLFolderViewFunctor; class LLFolderViewFilter; +class LLFolderViewModelInterface; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLFolderViewItem @@ -78,8 +79,6 @@ public: static const F32 FOLDER_CLOSE_TIME_CONSTANT; static const F32 FOLDER_OPEN_TIME_CONSTANT; - const std::string& getSearchableLabel() { return mSearchableLabel; } - private: BOOL mIsSelected; @@ -90,7 +89,6 @@ protected: LLFolderViewItem(const Params& p); std::string mLabel; - std::string mSearchableLabel; S32 mLabelWidth; bool mLabelWidthDirty; LLFolderViewFolder* mParentFolder; @@ -106,8 +104,7 @@ protected: BOOL mHasVisibleChildren; S32 mIndentation; S32 mItemHeight; - BOOL mPassedFilter; - S32 mLastFilterGeneration; + //TODO RN: create interface for string highlighting //std::string::size_type mStringMatchOffset; F32 mControlLabelRotation; @@ -115,9 +112,6 @@ protected: BOOL mDragAndDropTarget; bool mIsMouseOverTitle; - // helper function to change the selection from the root. - void changeSelectionFromRoot(LLFolderViewItem* selection, BOOL selected); - // this is an internal method used for adding items to folders. A // no-op at this level, but reimplemented in derived classes. virtual BOOL addItem(LLFolderViewItem*) { return FALSE; } @@ -130,39 +124,20 @@ public: virtual void openItem( void ); - // This function clears the currently selected item, and records - // the specified selected item appropriately for display and use - // in the UI. If open is TRUE, then folders are opened up along - // the way to the selection. - void setSelectionFromRoot(LLFolderViewItem* selection, BOOL openitem, - BOOL take_keyboard_focus = TRUE); - - // This function is called when the folder view is dirty. It's - // implemented here but called by derived classes when folding the - // views. - void arrangeFromRoot(); - void filterFromRoot( void ); - void arrangeAndSet(BOOL set_selection, BOOL take_keyboard_focus); virtual ~LLFolderViewItem( void ); // addToFolder() returns TRUE if it succeeds. FALSE otherwise - enum { ARRANGE = TRUE, DO_NOT_ARRANGE = FALSE }; virtual BOOL addToFolder(LLFolderViewFolder* folder); // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. - virtual S32 arrange( S32* width, S32* height, S32 filter_generation ); + virtual S32 arrange( S32* width, S32* height ); virtual S32 getItemHeight(); - // applies filters to control visibility of items - virtual void filter( LLFolderViewFilter& filter); - // updates filter serial number and optionally propagated value up to root - S32 getLastFilterGeneration() { return mLastFilterGeneration; } - - virtual void dirtyFilter(); + S32 getLastFilterGeneration() const; // If 'selection' is 'this' then note that otherwise ignore. // Returns TRUE if this item ends up being selected. @@ -213,8 +188,6 @@ public: // viewed. This method will ask the viewed object itself. const std::string& getName( void ) const; - const std::string& getSearchableLabel( void ) const; - // This method returns the label displayed on the view. This // method was primarily added to allow sorting on the folder // contents possible before the entire view has been constructed. @@ -224,12 +197,17 @@ public: LLFolderViewFolder* getParentFolder( void ) { return mParentFolder; } const LLFolderViewFolder* getParentFolder( void ) const { return mParentFolder; } + void setParentFolder(LLFolderViewFolder* parent) { mParentFolder = parent; } + LLFolderViewItem* getNextOpenNode( BOOL include_children = TRUE ); LLFolderViewItem* getPreviousOpenNode( BOOL include_children = TRUE ); const LLFolderViewModelItem* getViewModelItem( void ) const { return mListener; } LLFolderViewModelItem* getViewModelItem( void ) { return mListener; } + const LLFolderViewModelInterface* getFolderViewModel( void ) const; + LLFolderViewModelInterface* getFolderViewModel( void ); + // just rename the object. void rename(const std::string& new_name); @@ -239,15 +217,11 @@ public: virtual BOOL isOpen() const { return FALSE; } virtual LLFolderView* getRoot(); + virtual const LLFolderView* getRoot() const; BOOL isDescendantOf( const LLFolderViewFolder* potential_ancestor ); S32 getIndentation() { return mIndentation; } - virtual BOOL potentiallyVisible(); // is the item definitely visible or we haven't made up our minds yet? - virtual BOOL potentiallyHidden(); // did this item not pass the filter or do we not know yet? - - virtual BOOL getFiltered(); - virtual BOOL getFiltered(S32 filter_generation); - virtual void setFiltered(BOOL filtered, S32 filter_generation); + virtual BOOL passedFilter(S32 filter_generation = -1); // refresh information from the object being viewed. virtual void refresh(); @@ -305,7 +279,6 @@ protected: F32 mAutoOpenCountdown; S32 mLastArrangeGeneration; S32 mLastCalculatedWidth; - S32 mCompletedFilterGeneration; S32 mMostFilteredDescendantGeneration; bool mNeedsSort; bool mPassedFolderFilter; @@ -322,8 +295,6 @@ public: virtual ~LLFolderViewFolder( void ); - virtual BOOL potentiallyVisible(); - LLFolderViewItem* getNextFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); LLFolderViewItem* getPreviousFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); @@ -332,34 +303,17 @@ public: // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. - virtual S32 arrange( S32* width, S32* height, S32 filter_generation ); + virtual S32 arrange( S32* width, S32* height ); BOOL needsArrange(); - virtual void setCompletedFilterGeneration(S32 generation, BOOL recurse_up); - virtual S32 getCompletedFilterGeneration() { return mCompletedFilterGeneration; } - - BOOL hasFilteredDescendants(S32 filter_generation); - BOOL hasFilteredDescendants(); - - // applies filters to control visibility of items - virtual void filter( LLFolderViewFilter& filter); - virtual void setFiltered(BOOL filtered, S32 filter_generation); - virtual BOOL getFiltered(); - virtual BOOL getFiltered(S32 filter_generation); - - virtual void dirtyFilter(); - - // folder-specific filtering (filter status propagates top down instead of bottom up) - void filterFolder(LLFolderViewFilter& filter); - void setFilteredFolder(bool filtered, S32 filter_generation); - bool getFilteredFolder(S32 filter_generation); + bool descendantsPassedFilter(S32 filter_generation = -1); // Passes selection information on to children and record // selection information if necessary. // Returns TRUE if this object (or a child) ends up being selected. // If 'openitem' is TRUE then folders are opened up along the way to the selection. - virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus); + virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus = TRUE); // This method is used to change the selection of an item. // Recursively traverse all children; if 'selection' is 'this' then change @@ -385,14 +339,6 @@ public: //virtual BOOL removeRecursively(BOOL single_item); //virtual BOOL remove(); - // remove the specified item (and any children) if - // possible. Return TRUE if the item was deleted. - BOOL removeItem(LLFolderViewItem* item); - - // simply remove the view (and any children) Don't bother telling - // the listeners. - void removeView(LLFolderViewItem* item); - // extractItem() removes the specified item from the folder, but // doesn't delete it. virtual void extractItem( LLFolderViewItem* item ); diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index 74c8bb92ef..0216ba2a07 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -72,9 +72,9 @@ public: // +-------------------------------------------------------------------+ // + Execution And Results // +-------------------------------------------------------------------+ - virtual bool check(const LLFolderViewItem* item) = 0; + virtual bool check(const LLFolderViewModelItem* item) = 0; virtual bool check(const LLInventoryItem* item) = 0; - virtual bool checkFolder(const LLFolderViewFolder* folder) const = 0; + virtual bool checkFolder(const LLFolderViewModelItem* folder) const = 0; virtual bool checkFolder(const LLUUID& folder_id) const = 0; virtual void setEmptyLookupMessage(const std::string& message) = 0; @@ -126,6 +126,8 @@ public: virtual bool contentsReady() = 0; virtual void setFolderView(LLFolderView* folder_view) = 0; + virtual LLFolderViewFilter* getFilter() = 0; + virtual const LLFolderViewFilter* getFilter() const = 0; }; class LLFolderViewModelCommon : public LLFolderViewModelInterface @@ -152,20 +154,82 @@ protected: }; +template +class LLFolderViewModel : public LLFolderViewModelCommon +{ +public: + LLFolderViewModel(){} + virtual ~LLFolderViewModel() {} + + typedef SORT_TYPE SortType; + typedef ITEM_TYPE ItemType; + typedef FOLDER_TYPE FolderType; + typedef FILTER_TYPE FilterType; + + virtual SortType& getSorter() { return mSorter; } + virtual const SortType& getSorter() const { return mSorter; } + virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } + + virtual FilterType* getFilter() { return &mFilter; } + virtual const FilterType* getFilter() const { return &mFilter; } + virtual void setFilter(const FilterType& filter) { mFilter = filter; } + + // TODO RN: remove this and put all filtering logic in view model + // add getStatusText and isFiltering() + virtual bool contentsReady() { return true; } + + struct ViewModelCompare + { + ViewModelCompare(const SortType& sorter) + : mSorter(sorter) + {} + + bool operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) const + { + return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + } + + bool operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) const + { + return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + } + + const SortType& mSorter; + }; + + void sort(LLFolderViewFolder* folder) + { + if (needsSort(folder->getViewModelItem())) + { + folder->sortFolders(ViewModelCompare(getSorter())); + folder->sortItems(ViewModelCompare(getSorter())); + folder->getViewModelItem()->setSortVersion(mTargetSortVersion); + folder->requestArrange(); + } + } + + //TODO RN: fix this + void filter(LLFolderViewFolder* folder) + { + + } + +protected: + SortType mSorter; + FilterType mFilter; +}; + // This is am abstract base class that users of the folderview classes // would use to bridge the folder view with the underlying data class LLFolderViewModelItem { public: - LLFolderViewModelItem() - : mFolderViewItem(NULL) - {} - virtual ~LLFolderViewModelItem( void ) {}; virtual void update() {} //called when drawing virtual const std::string& getName() const = 0; virtual const std::string& getDisplayName() const = 0; + virtual const std::string& getSearchableName() const = 0; virtual LLPointer getIcon() const = 0; virtual LLPointer getIconOpen() const { return getIcon(); } @@ -198,12 +262,23 @@ public: virtual void buildContextMenu(LLMenuGL& menu, U32 flags) = 0; + virtual bool potentiallyVisible() = 0; // is the item definitely visible or we haven't made up our minds yet? + + virtual void filter( LLFolderViewFilter& filter) = 0; + virtual bool passedFilter(S32 filter_generation = -1) = 0; + virtual bool descendantsPassedFilter(S32 filter_generation = -1) = 0; + virtual void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) = 0; + virtual void dirtyFilter() = 0; + + virtual S32 getLastFilterGeneration() const = 0; + // This method should be called when a drag begins. returns TRUE // if the drag can begin, otherwise FALSE. virtual LLToolDragAndDrop::ESource getDragSource() const = 0; virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; virtual bool hasChildren() const = 0; + virtual void addChild(LLFolderViewModelItem* child) = 0; // This method will be called to determine if a drop can be // performed, and will set drop to TRUE if a drop is @@ -217,10 +292,12 @@ public: virtual void requestSort() = 0; virtual S32 getSortVersion() = 0; virtual void setSortVersion(S32 version) = 0; + virtual void setParent(LLFolderViewModelItem* parent) = 0; + protected: + friend class LLFolderViewItem; - void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;} - LLFolderViewItem* mFolderViewItem; + virtual void setFolderViewItem(LLFolderViewItem* folder_view_item) = 0; }; @@ -228,95 +305,48 @@ class LLFolderViewModelItemCommon : public LLFolderViewModelItem { public: LLFolderViewModelItemCommon() - : mSortVersion(-1) + : mSortVersion(-1), + mPassedFilter(false), + mPassedFolderFilter(false), + mFolderViewItem(NULL), + mLastFilterGeneration(-1), + mMostFilteredDescendantGeneration(-1) {} void requestSort() { mSortVersion = -1; } S32 getSortVersion() { return mSortVersion; } void setSortVersion(S32 version) { mSortVersion = version;} -protected: - - S32 mSortVersion; -}; - -template -class LLFolderViewModel : public LLFolderViewModelCommon -{ -public: - LLFolderViewModel(){} - virtual ~LLFolderViewModel() {} - - typedef SORT_TYPE SortType; - typedef ITEM_TYPE ItemType; - typedef FOLDER_TYPE FolderType; - typedef FILTER_TYPE FilterType; - - virtual SortType& getSorter() { return mSorter; } - virtual const SortType& getSorter() const { return mSorter; } - virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } - virtual FilterType& getFilter() { return mFilter; } - virtual const FilterType& getFilter() const { return mFilter; } - virtual void setFilter(const FilterType& filter) { mFilter = filter; } - - // TODO RN: remove this and put all filtering logic in view model - // add getStatusText and isFiltering() - virtual bool contentsReady() { return true; } - - struct ViewModelCompare + S32 getLastFilterGeneration() const { return mLastFilterGeneration; } + void dirtyFilter() { - ViewModelCompare(const SortType& sorter) - : mSorter(sorter) - {} - - bool operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) const + mLastFilterGeneration = -1; + // bubble up dirty flag all the way to root + if (mParent) { - return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + mParent->dirtyFilter(); } + } + virtual void addChild(LLFolderViewModelItem* child) { mChildren.push_back(child); child->setParent(this); } - bool operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) const - { - return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); - } +protected: + virtual void setParent(LLFolderViewModelItem* parent) { mParent = parent; } - const SortType& mSorter; - }; + S32 mSortVersion; + bool mPassedFilter; + bool mPassedFolderFilter; - void sort(LLFolderViewFolder* folder) - { - if (needsSort(folder->getViewModelItem())) - { - folder->sortFolders(ViewModelCompare(getSorter())); - folder->sortItems(ViewModelCompare(getSorter())); - folder->getViewModelItem()->setSortVersion(mTargetSortVersion); - folder->requestArrange(); - } - } + S32 mLastFilterGeneration; + S32 mMostFilteredDescendantGeneration; - //TODO RN: fix this - void filter(LLFolderViewFolder* folder) - { - /*FilterType& filter = getFilter(); - for (std::list::const_iterator it = folder->getItemsBegin(), end_it = folder->getItemsEnd(); - it != end_it; - ++it) - { - LLFolderViewItem* child_item = *it; - child_item->setFiltered(filter.checkFolder(static_cast(child_item->getViewModelItem())), filter.getCurrentGeneration()); - } - for (std::list::const_iterator it = folder->getFoldersBegin(), end_it = folder->getFoldersEnd(); - it != end_it; - ++it) - { - LLFolderViewItem* child_folder = *it; - child_folder->setFiltered(filter.check(static_cast(child_folder->getViewModelItem())), filter.getCurrentGeneration()); - }*/ - } + typedef std::list child_list_t; + child_list_t mChildren; + LLFolderViewModelItem* mParent; -protected: - SortType mSorter; - FilterType mFilter; + void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;} + LLFolderViewItem* mFolderViewItem; }; + #endif diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 70a174a140..45a2bffa6b 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -1545,6 +1545,10 @@ void LLItemBridge::buildDisplayName() const { mDisplayName.assign(LLStringUtil::null); } + + mSearchableName.assign(mDisplayName); + mSearchableName.append(getLabelSuffix()); + LLStringUtil::toUpper(mSearchableName); } LLFontGL::StyleFlags LLItemBridge::getLabelStyle() const @@ -1850,11 +1854,9 @@ void LLFolderBridge::buildDisplayName() const LLTrans::findString(mDisplayName, std::string("InvFolder ") + getName(), LLSD()); } - //if (mDisplayName.empty()) - //{ - // S32 foo; - // foo = 0; - //} + mSearchableName.assign(mDisplayName); + mSearchableName.append(getLabelSuffix()); + LLStringUtil::toUpper(mSearchableName); } @@ -4000,7 +4002,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, LLFolderViewItem* fv_item = active_panel->getItemByID(inv_item->getUUID()); if (!fv_item) return false; - accept = filter->check(fv_item); + accept = filter->check(fv_item->getViewModelItem()); } if (accept && drop) @@ -4222,7 +4224,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item, LLFolderViewItem* fv_item = active_panel->getItemByID(inv_item->getUUID()); if (!fv_item) return false; - accept = filter->check(fv_item); + accept = filter->check(fv_item->getViewModelItem()); } if (accept && drop) @@ -4319,7 +4321,7 @@ bool check_item(const LLUUID& item_id, LLFolderViewItem* fv_item = active_panel->getItemByID(item_id); if (!fv_item) return false; - return filter->check(fv_item); + return filter->check(fv_item->getViewModelItem()); } // +=================================================+ @@ -6126,7 +6128,7 @@ void LLLinkFolderBridge::gotoItem() model->fetchDescendentsOf(cat_uuid); } base_folder->setOpen(TRUE); - mRoot->setSelectionFromRoot(base_folder,TRUE); + mRoot->setSelection(base_folder,TRUE); mRoot->scrollToShowSelection(); } } diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index 26789627f7..b0582d003d 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -88,6 +88,8 @@ public: //-------------------------------------------------------------------- virtual const std::string& getName() const; virtual const std::string& getDisplayName() const; + const std::string& getSearchableName() const { return mSearchableName; } + virtual PermissionMask getPermissionMask() const; virtual LLFolderType::EType getPreferredType() const; virtual time_t getCreationDate() const; @@ -174,6 +176,7 @@ protected: bool mIsLink; LLTimer mTimeSinceRequestStart; mutable std::string mDisplayName; + mutable std::string mSearchableName; void purgeItem(LLInventoryModel *model, const LLUUID &uuid); virtual void buildDisplayName() const {} diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index c13bb5123e..c7e0136368 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -71,35 +71,35 @@ LLInventoryFilter::LLInventoryFilter(const Params& p) mFilterOps(p.filter_ops), mOrder(p.sort_order), mFilterSubString(p.substring), - mLastSuccessGeneration(0), - mLastFailGeneration(S32_MAX), + mCurrentGeneration(0), + mFirstRequiredGeneration(0), mFirstSuccessGeneration(0), mFilterCount(0) { - mNextFilterGeneration = mLastSuccessGeneration + 1; + mNextFilterGeneration = mCurrentGeneration + 1; // copy mFilterOps into mDefaultFilterOps markDefault(); } -bool LLInventoryFilter::check(const LLFolderViewItem* item) +bool LLInventoryFilter::check(const LLFolderViewModelItem* item) { + const LLFolderViewModelItemInventory* listener = static_cast(item); // Clipboard cut items are *always* filtered so we need this value upfront - const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); const BOOL passed_clipboard = (listener ? checkAgainstClipboard(listener->getUUID()) : TRUE); // If it's a folder and we're showing all folders, return automatically. - const BOOL is_folder = (dynamic_cast(item) != NULL); + const BOOL is_folder = listener->getInventoryType() == LLInventoryType::IT_CATEGORY;; if (is_folder && (mFilterOps.mShowFolderState == LLInventoryFilter::SHOW_ALL_FOLDERS)) { return passed_clipboard; } - std::string::size_type string_offset = mFilterSubString.size() ? item->getSearchableLabel().find(mFilterSubString) : std::string::npos; + std::string::size_type string_offset = mFilterSubString.size() ? listener->getSearchableName().find(mFilterSubString) : std::string::npos; - const BOOL passed_filtertype = checkAgainstFilterType(item); - const BOOL passed_permissions = checkAgainstPermissions(item); - const BOOL passed_filterlink = checkAgainstFilterLinks(item); + const BOOL passed_filtertype = checkAgainstFilterType(listener); + const BOOL passed_permissions = checkAgainstPermissions(listener); + const BOOL passed_filterlink = checkAgainstFilterLinks(listener); const BOOL passed = (passed_filtertype && passed_permissions && passed_filterlink && @@ -117,27 +117,19 @@ bool LLInventoryFilter::check(const LLInventoryItem* item) const bool passed_permissions = checkAgainstPermissions(item); const BOOL passed_clipboard = checkAgainstClipboard(item->getUUID()); const bool passed = (passed_filtertype - && passed_permissions - && passed_clipboard - && (mFilterSubString.size() == 0 || string_offset != std::string::npos)); + && passed_permissions + && passed_clipboard + && (mFilterSubString.size() == 0 || string_offset != std::string::npos)); return passed; } -bool LLInventoryFilter::checkFolder(const LLFolderViewFolder* folder) const +bool LLInventoryFilter::checkFolder(const LLFolderViewModelItem* item) const { - if (!folder) - { - llwarns << "The filter can not be checked on an invalid folder." << llendl; - llassert(false); // crash in development builds - return false; - } - - const LLFolderViewModelItemInventory* listener = static_cast(folder->getViewModelItem()); + const LLFolderViewModelItemInventory* listener = static_cast(item); if (!listener) { - llwarns << "Folder view event listener not found." << llendl; - llassert(false); // crash in development builds + llerrs << "Folder view event listener not found." << llendl; return false; } @@ -179,9 +171,8 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const return passed_clipboard; } -bool LLInventoryFilter::checkAgainstFilterType(const LLFolderViewItem* item) const +bool LLInventoryFilter::checkAgainstFilterType(const LLFolderViewModelItemInventory* listener) const { - const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); if (!listener) return FALSE; LLInventoryType::EType object_type = listener->getInventoryType(); @@ -347,13 +338,12 @@ bool LLInventoryFilter::checkAgainstClipboard(const LLUUID& object_id) const return true; } -bool LLInventoryFilter::checkAgainstPermissions(const LLFolderViewItem* item) const +bool LLInventoryFilter::checkAgainstPermissions(const LLFolderViewModelItemInventory* listener) const { - const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); if (!listener) return FALSE; PermissionMask perm = listener->getPermissionMask(); - const LLInvFVBridge *bridge = dynamic_cast(item->getViewModelItem()); + const LLInvFVBridge *bridge = dynamic_cast(listener); if (bridge && bridge->isLink()) { const LLUUID& linked_uuid = gInventory.getLinkedItemID(bridge->getUUID()); @@ -375,9 +365,8 @@ bool LLInventoryFilter::checkAgainstPermissions(const LLInventoryItem* item) con return (perm & mFilterOps.mPermissions) == mFilterOps.mPermissions; } -bool LLInventoryFilter::checkAgainstFilterLinks(const LLFolderViewItem* item) const +bool LLInventoryFilter::checkAgainstFilterLinks(const LLFolderViewModelItemInventory* listener) const { - const LLFolderViewModelItemInventory* listener = static_cast(item->getViewModelItem()); if (!listener) return TRUE; const LLUUID object_id = listener->getUUID(); @@ -740,7 +729,7 @@ void LLInventoryFilter::resetDefault() void LLInventoryFilter::setModified(EFilterModified behavior) { mFilterText.clear(); - mLastSuccessGeneration = mNextFilterGeneration++; + mCurrentGeneration = mNextFilterGeneration++; if (mFilterModified == FILTER_NONE) { @@ -753,33 +742,21 @@ void LLInventoryFilter::setModified(EFilterModified behavior) mFilterModified = FILTER_RESTART; } - if (isNotDefault()) - { - // if not keeping current filter results, update last valid as well - switch(mFilterModified) - { - case FILTER_RESTART: - mLastFailGeneration = mLastSuccessGeneration; - mFirstSuccessGeneration = mLastSuccessGeneration; - break; - case FILTER_LESS_RESTRICTIVE: - mLastFailGeneration = mLastSuccessGeneration; - break; - case FILTER_MORE_RESTRICTIVE: - mFirstSuccessGeneration = mLastSuccessGeneration; - // must have passed either current filter generation (meaningless, as it hasn't been run yet) - // or some older generation, so keep the value - mLastFailGeneration = llmin(mLastFailGeneration, mLastSuccessGeneration); - break; - default: - llerrs << "Bad filter behavior specified" << llendl; - } - } - else + // if not keeping current filter results, update last valid as well + switch(mFilterModified) { - // shortcut disabled filters to show everything immediately - mLastFailGeneration = 0; - mFirstSuccessGeneration = S32_MAX; + case FILTER_RESTART: + mFirstRequiredGeneration = mCurrentGeneration; + mFirstSuccessGeneration = mCurrentGeneration; + break; + case FILTER_LESS_RESTRICTIVE: + mFirstRequiredGeneration = mCurrentGeneration; + break; + case FILTER_MORE_RESTRICTIVE: + mFirstSuccessGeneration = mCurrentGeneration; + break; + default: + llerrs << "Bad filter behavior specified" << llendl; } } @@ -1101,7 +1078,7 @@ void LLInventoryFilter::decrementFilterCount() S32 LLInventoryFilter::getCurrentGeneration() const { - return mLastSuccessGeneration; + return mCurrentGeneration; } S32 LLInventoryFilter::getFirstSuccessGeneration() const { @@ -1109,7 +1086,7 @@ S32 LLInventoryFilter::getFirstSuccessGeneration() const } S32 LLInventoryFilter::getFirstRequiredGeneration() const { - return mLastFailGeneration; + return mFirstRequiredGeneration; } void LLInventoryFilter::setEmptyLookupMessage(const std::string& message) diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index 5b92c21a85..af245a9c3b 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -186,16 +186,10 @@ public: // +-------------------------------------------------------------------+ // + Execution And Results // +-------------------------------------------------------------------+ - bool check(const LLFolderViewItem* item); + bool check(const LLFolderViewModelItem* listener); bool check(const LLInventoryItem* item); - bool checkFolder(const LLFolderViewFolder* folder) const; + bool checkFolder(const LLFolderViewModelItem* listener) const; bool checkFolder(const LLUUID& folder_id) const; - bool checkAgainstFilterType(const LLFolderViewItem* item) const; - bool checkAgainstFilterType(const LLInventoryItem* item) const; - bool checkAgainstPermissions(const LLFolderViewItem* item) const; - bool checkAgainstPermissions(const LLInventoryItem* item) const; - bool checkAgainstFilterLinks(const LLFolderViewItem* item) const; - bool checkAgainstClipboard(const LLUUID& object_id) const; bool showAllResults() const; @@ -260,6 +254,12 @@ public: private: bool areDateLimitsSet(); + bool checkAgainstFilterType(const class LLFolderViewModelItemInventory* listener) const; + bool checkAgainstFilterType(const LLInventoryItem* item) const; + bool checkAgainstPermissions(const class LLFolderViewModelItemInventory* listener) const; + bool checkAgainstPermissions(const LLInventoryItem* item) const; + bool checkAgainstFilterLinks(const class LLFolderViewModelItemInventory* listener) const; + bool checkAgainstClipboard(const LLUUID& object_id) const; U32 mOrder; @@ -270,8 +270,8 @@ private: std::string mFilterSubStringOrig; const std::string mName; - S32 mLastSuccessGeneration; - S32 mLastFailGeneration; + S32 mCurrentGeneration; + S32 mFirstRequiredGeneration; S32 mFirstSuccessGeneration; S32 mNextFilterGeneration; diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp index 1e494c3ef1..ff461236a2 100644 --- a/indra/newview/llinventoryfunctions.cpp +++ b/indra/newview/llinventoryfunctions.cpp @@ -983,7 +983,7 @@ void LLSaveFolderState::doFolder(LLFolderViewFolder* folder) void LLOpenFilteredFolders::doItem(LLFolderViewItem *item) { - if (item->getFiltered()) + if (item->passedFilter()) { item->getParentFolder()->setOpenArrangeRecursively(TRUE, LLFolderViewFolder::RECURSE_UP); } @@ -991,12 +991,12 @@ void LLOpenFilteredFolders::doItem(LLFolderViewItem *item) void LLOpenFilteredFolders::doFolder(LLFolderViewFolder* folder) { - if (folder->getFiltered() && folder->getParentFolder()) + if (folder->LLFolderViewItem::passedFilter() && folder->getParentFolder()) { folder->getParentFolder()->setOpenArrangeRecursively(TRUE, LLFolderViewFolder::RECURSE_UP); } // if this folder didn't pass the filter, and none of its descendants did - else if (!folder->getFiltered() && !folder->hasFilteredDescendants()) + else if (!folder->getViewModelItem()->passedFilter() && !folder->getViewModelItem()->descendantsPassedFilter()) { folder->setOpenArrangeRecursively(FALSE, LLFolderViewFolder::RECURSE_NO); } @@ -1004,7 +1004,7 @@ void LLOpenFilteredFolders::doFolder(LLFolderViewFolder* folder) void LLSelectFirstFilteredItem::doItem(LLFolderViewItem *item) { - if (item->getFiltered() && !mItemSelected) + if (item->passedFilter() && !mItemSelected) { item->getRoot()->setSelection(item, FALSE, FALSE); if (item->getParentFolder()) @@ -1017,7 +1017,7 @@ void LLSelectFirstFilteredItem::doItem(LLFolderViewItem *item) void LLSelectFirstFilteredItem::doFolder(LLFolderViewFolder* folder) { - if (folder->getFiltered() && !mItemSelected) + if (folder->LLFolderViewItem::passedFilter() && !mItemSelected) { folder->getRoot()->setSelection(folder, FALSE, FALSE); if (folder->getParentFolder()) diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 74492e0005..aba4c088ab 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -254,18 +254,16 @@ void LLInventoryPanel::initFromParams(const LLInventoryPanel::Params& params) mFolderRoot->setCallbackRegistrar(&mCommitCallbackRegistrar); // Scroller - { - LLRect scroller_view_rect = getRect(); - scroller_view_rect.translate(-scroller_view_rect.mLeft, -scroller_view_rect.mBottom); - LLScrollContainer::Params scroller_params(params.scroll()); - scroller_params.rect(scroller_view_rect); - mScroller = LLUICtrlFactory::create(scroller_params); - addChild(mScroller); - mScroller->addChild(mFolderRoot); - mFolderRoot->setScrollContainer(mScroller); - mFolderRoot->setFollowsAll(); - mFolderRoot->addChild(mFolderRoot->mStatusTextBox); - } + LLRect scroller_view_rect = getRect(); + scroller_view_rect.translate(-scroller_view_rect.mLeft, -scroller_view_rect.mBottom); + LLScrollContainer::Params scroller_params(params.scroll()); + scroller_params.rect(scroller_view_rect); + mScroller = LLUICtrlFactory::create(scroller_params); + addChild(mScroller); + mScroller->addChild(mFolderRoot); + mFolderRoot->setScrollContainer(mScroller); + mFolderRoot->setFollowsAll(); + mFolderRoot->addChild(mFolderRoot->mStatusTextBox); // Set up the callbacks from the inventory we're viewing, and then build everything. mInventoryObserver = new LLInventoryPanelObserver(this); @@ -344,12 +342,12 @@ void LLInventoryPanel::draw() const LLInventoryFilter* LLInventoryPanel::getFilter() const { - return &getFolderViewModel()->getFilter(); + return getFolderViewModel()->getFilter(); } LLInventoryFilter* LLInventoryPanel::getFilter() { - return &getFolderViewModel()->getFilter(); + return getFolderViewModel()->getFilter(); } void LLInventoryPanel::setFilterTypes(U64 types, LLInventoryFilter::EFilterType filter_type) @@ -561,7 +559,6 @@ void LLInventoryPanel::modelChanged(U32 mask) if (new_parent != NULL) { // Item is to be moved and we found its new parent in the panel's directory, so move the item's UI. - view_item->getParentFolder()->extractItem(view_item); view_item->addToFolder(new_parent); addItemID(viewmodel_item->getUUID(), view_item); } @@ -1358,3 +1355,104 @@ void LLFolderViewModelItemInventory::requestSort() mFolderViewItem->getParentFolder()->getViewModelItem()->requestSort(); } } + +bool LLFolderViewModelItemInventory::potentiallyVisible() +{ + return passedFilter() // we've passed the filter + || getLastFilterGeneration() < mFolderViewItem->getRoot()->getFolderViewModel()->getFilter()->getFirstSuccessGeneration() // or we don't know yet + || descendantsPassedFilter(); +} + +bool LLFolderViewModelItemInventory::passedFilter(S32 filter_generation) +{ + if (filter_generation < 0) filter_generation = mFolderViewItem->getRoot()->getFolderViewModel()->getFilter()->getFirstSuccessGeneration(); + return mPassedFolderFilter + && mLastFilterGeneration >= filter_generation + && (mPassedFilter || descendantsPassedFilter(filter_generation)); +} + +bool LLFolderViewModelItemInventory::descendantsPassedFilter(S32 filter_generation) +{ + if (filter_generation < 0) filter_generation = mFolderViewItem->getRoot()->getFolderViewModel()->getFilter()->getFirstSuccessGeneration(); + return mMostFilteredDescendantGeneration >= filter_generation; +} + +void LLFolderViewModelItemInventory::setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) +{ + mPassedFilter = passed; + mPassedFolderFilter = passed_folder; + mLastFilterGeneration = filter_generation; +} + +void LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter ) +{ + S32 filter_generation = filter.getCurrentGeneration(); + S32 must_pass_generation = filter.getFirstRequiredGeneration(); + + // mMostFilteredDescendantGeneration might have been reset + // in which case we need to update it even for folders that + // don't need to be filtered anymore + if (item->getLastFilterGeneration() < filter_generation) + { + if (item->getLastFilterGeneration() >= must_pass_generation && + !item->passedFilter(must_pass_generation)) + { + // failed to pass an earlier filter that was a subset of the current one + // go ahead and flag this item as done + item->setPassedFilter(false, false, filter_generation); + } + else + { + //TODO RN: + item->filter( filter ); + } + } + + // track latest generation to pass any child items + if (item->passedFilter()) + { + mMostFilteredDescendantGeneration = filter_generation; + //TODO RN: ensure this still happens + //requestArrange(); + } +} + +void LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) +{ + if(getLastFilterGeneration() < filter.getFirstRequiredGeneration() // haven't checked descendants against minimum required generation to pass + || descendantsPassedFilter(filter.getFirstRequiredGeneration())) // or at least one descendant has passed the minimum requirement + { + // now query children + for (child_list_t::iterator iter = mChildren.begin(); + iter != mChildren.end() && filter.getFilterCount() > 0; + ++iter) + { + filterChildItem((*iter), filter); + } + } + + // if we didn't use all filter iterations + // that means we filtered all of our descendants + // so filter ourselves now + if (filter.getFilterCount() > 0) + { + const BOOL previous_passed_filter = mPassedFilter; + const BOOL passed_filter = filter.check(this); + const BOOL passed_filter_folder = (getInventoryType() == LLInventoryType::IT_CATEGORY) + ? filter.checkFolder(this) + : true; + + // If our visibility will change as a result of this filter, then + // we need to be rearranged in our parent folder + LLFolderViewFolder* parent_folder = mFolderViewItem->getParentFolder(); + if (parent_folder && passed_filter != previous_passed_filter) + { + parent_folder->requestArrange(); + } + + setPassedFilter(passed_filter, passed_filter_folder, filter.getCurrentGeneration()); + //TODO RN: create interface for string highlighting + //mStringMatchOffset = filter.getStringMatchOffset(this); + filter.decrementFilterCount(); + } +} diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 645e2f6d76..35a3f9b5e1 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -62,6 +62,12 @@ public: virtual EInventorySortGroup getSortGroup() const = 0; virtual LLInventoryObject* getInventoryObject() const = 0; virtual void requestSort(); + virtual bool potentiallyVisible(); + virtual bool passedFilter(S32 filter_generation = -1); + virtual bool descendantsPassedFilter(S32 filter_generation = -1); + virtual void setPassedFilter(bool filtered, bool filtered_folder, S32 filter_generation); + virtual void filter( LLFolderViewFilter& filter); + virtual void filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); }; class LLInventorySort diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 901c6379de..0b899d34f4 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -102,7 +102,7 @@ void LLCheckFolderState::doFolder(LLFolderViewFolder* folder) // Counting only folders that pass the filter. // The listener check allow us to avoid counting the folder view // object itself because it has no listener assigned. - if (folder->hasFilteredDescendants() && folder->getViewModelItem()) + if (folder->getViewModelItem()->descendantsPassedFilter()) { if (folder->isOpen()) { diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index e3446fdb3a..33581160fd 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -227,7 +227,7 @@ LLPanelMainInventory::~LLPanelMainInventory( void ) } } - LLInventoryFilter* filter = getChild("Recent Items")->getFilter(); + LLInventoryFilter* filter = findChild("Recent Items")->getFilter(); if (filter) { LLSD filterState; diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index da82d70f22..6a232a26f7 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -77,6 +77,7 @@ protected: LLUUID mUUID; std::string mName; mutable std::string mDisplayName; + mutable std::string mSearchableName; LLPanelObjectInventory* mPanel; U32 mFlags; LLAssetType::EType mAssetType; @@ -105,6 +106,8 @@ public: // LLFolderViewModelItemInventory functionality virtual const std::string& getName() const; virtual const std::string& getDisplayName() const; + virtual const std::string& getSearchableName() const; + virtual PermissionMask getPermissionMask() const { return PERM_NONE; } /*virtual*/ LLFolderType::EType getPreferredType() const { return LLFolderType::FT_NONE; } virtual const LLUUID& getUUID() const { return mUUID; } @@ -335,9 +338,17 @@ const std::string& LLTaskInvFVBridge::getDisplayName() const } } + mSearchableName.assign(mDisplayName + getLabelSuffix()); + return mDisplayName; } +const std::string& LLTaskInvFVBridge::getSearchableName() const +{ + return mSearchableName; +} + + // BUG: No creation dates for task inventory time_t LLTaskInvFVBridge::getCreationDate() const { diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index 194aa7f71b..b143240187 100644 --- a/indra/newview/llsidepanelappearance.cpp +++ b/indra/newview/llsidepanelappearance.cpp @@ -271,7 +271,7 @@ void LLSidepanelAppearance::onOpenOutfitButtonClicked() if (outfit_folder) { outfit_folder->setOpen(!outfit_folder->isOpen()); - root->setSelectionFromRoot(outfit_folder,TRUE); + root->setSelection(outfit_folder,TRUE); root->scrollToShowSelection(); } } diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 50d63911ad..654b18614a 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -623,10 +623,9 @@ void LLFloaterTexturePicker::draw() LLFolderView* folder_view = mInventoryPanel->getRootFolder(); if (!folder_view) return; - LLInventoryFilter* filter = static_cast(folder_view->getFilter()); - if (!filter) return; + LLInventoryFilter* filter = static_cast(folder_view->getFolderViewModel())->getFilter(); - bool is_filter_active = folder_view->getCompletedFilterGeneration() < filter->getCurrentGeneration() && + bool is_filter_active = folder_view->getLastFilterGeneration() < filter->getCurrentGeneration() && filter->isNotDefault(); // After inventory panel filter is applied we have to update @@ -637,8 +636,9 @@ void LLFloaterTexturePicker::draw() if (!is_filter_active && !mSelectedItemPinned) { folder_view->setPinningSelectedItem(mSelectedItemPinned); - folder_view->dirtyFilter(); - folder_view->arrangeFromRoot(); + folder_view->getViewModelItem()->dirtyFilter(); + //TODO RN: test + //folder_view->arrangeFromRoot(); mSelectedItemPinned = TRUE; } -- cgit v1.3 From 604bbb22783d2460384e340592ca1781908f6dd8 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Thu, 28 Jun 2012 23:30:36 -0700 Subject: CHUI-101 WIP Make LLFolderview general purpose cleaned up ownership of viewmodel more filtering fixes --- indra/newview/llfolderview.h | 1 - indra/newview/llfolderviewitem.h | 1 - indra/newview/llinventoryfilter.cpp | 17 +++++++---------- indra/newview/llpanelmaininventory.cpp | 24 ++++++++++++------------ indra/newview/llpanelobjectinventory.cpp | 2 +- indra/newview/llpanelobjectinventory.h | 2 ++ 6 files changed, 22 insertions(+), 25 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index d261a5967d..8a0317f840 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -302,7 +302,6 @@ protected: LLFrameTimer mAutoOpenTimer; LLFrameTimer mSearchTimer; std::string mSearchString; - LLFolderViewFilter* mFilter; BOOL mShowSelectionContext; BOOL mShowSingleSelection; LLFrameTimer mMultiSelectionFadeTimer; diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 7e48969826..a3c92a55e8 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -281,7 +281,6 @@ protected: S32 mLastCalculatedWidth; S32 mMostFilteredDescendantGeneration; bool mNeedsSort; - bool mPassedFolderFilter; public: typedef enum e_recurse_type diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index c7e0136368..08f1e541b5 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -95,16 +95,13 @@ bool LLInventoryFilter::check(const LLFolderViewModelItem* item) return passed_clipboard; } - std::string::size_type string_offset = mFilterSubString.size() ? listener->getSearchableName().find(mFilterSubString) : std::string::npos; + std::string::size_type string_offset = mFilterSubString.size() ? listener->getSearchableName().find(mFilterSubString) : 0; - const BOOL passed_filtertype = checkAgainstFilterType(listener); - const BOOL passed_permissions = checkAgainstPermissions(listener); - const BOOL passed_filterlink = checkAgainstFilterLinks(listener); - const BOOL passed = (passed_filtertype && - passed_permissions && - passed_filterlink && - passed_clipboard && - (mFilterSubString.size() == 0 || string_offset != std::string::npos)); + BOOL passed = string_offset != std::string::npos; + passed = passed && checkAgainstFilterType(listener); + passed = passed && checkAgainstPermissions(listener); + passed = passed && checkAgainstFilterLinks(listener); + passed = passed && passed_clipboard; return passed; } @@ -595,7 +592,7 @@ void LLInventoryFilter::setDateRange(time_t min_date, time_t max_date) void LLInventoryFilter::setDateRangeLastLogoff(BOOL sl) { - static LLCachedControl s_last_logoff(gSavedSettings, "LastLogoff", 0); + static LLCachedControl s_last_logoff(gSavedPerAccountSettings, "LastLogoff", 0); if (sl && !isSinceLogoff()) { setDateRange(s_last_logoff(), time_max()); diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index 33581160fd..6cef1f877b 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -222,21 +222,21 @@ LLPanelMainInventory::~LLPanelMainInventory( void ) if (p.validateBlock(false)) { LLParamSDParser().writeSD(filterState, p); - filterRoot[filter->getName()] = filterState; + filterRoot[filter->getName()] = filterState; + } } } - } - LLInventoryFilter* filter = findChild("Recent Items")->getFilter(); - if (filter) - { - LLSD filterState; - LLInventoryFilter::Params p; - filter->toParams(p); - LLParamSDParser parser; - parser.writeSD(filterState, p); - filterRoot[filter->getName()] = filterState; - } + LLInventoryFilter* filter = findChild("Recent Items")->getFilter(); + if (filter) + { + LLSD filterState; + LLInventoryFilter::Params p; + filter->toParams(p); + LLParamSDParser parser; + parser.writeSD(filterState, p); + filterRoot[filter->getName()] = filterState; + } std::ostringstream filterSaveName; filterSaveName << gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, FILTERS_FILENAME); diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 6a232a26f7..d0b9072ade 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1562,7 +1562,7 @@ void LLPanelObjectInventory::reset() p.tool_tip= LLTrans::getString("PanelContentsTooltip"); p.listener = LLTaskInvFVBridge::createObjectBridge(this, NULL); p.folder_indentation = -14; // subtract space normally reserved for folder expanders - p.view_model = new LLFolderViewModelInventory(); + p.view_model = &mInventoryViewModel; mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" //TODO RN: make this happen by manipulating filter object directly diff --git a/indra/newview/llpanelobjectinventory.h b/indra/newview/llpanelobjectinventory.h index 607b705f7f..7e857f8b31 100644 --- a/indra/newview/llpanelobjectinventory.h +++ b/indra/newview/llpanelobjectinventory.h @@ -29,6 +29,7 @@ #include "llvoinventorylistener.h" #include "llpanel.h" +#include "llinventorypanel.h" // for LLFolderViewModelInventory #include "llinventory.h" @@ -94,6 +95,7 @@ private: BOOL mHaveInventory; BOOL mIsInventoryEmpty; BOOL mInventoryNeedsUpdate; + LLFolderViewModelInventory mInventoryViewModel; }; #endif // LL_LLPANELOBJECTINVENTORY_H -- cgit v1.3 From 062cae9a4880f7672df7f6189e01b2bff15f42f1 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 29 Jun 2012 15:44:08 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose cleaned up some stale TODOs worked on getting initial inventory display to work consistently --- indra/newview/llfolderview.cpp | 2 +- indra/newview/llfolderviewmodel.h | 13 +++--------- indra/newview/llinventoryfilter.cpp | 3 +-- indra/newview/llinventorypanel.cpp | 34 ++++++++++++++++++++++++-------- indra/newview/llinventorypanel.h | 4 ++-- indra/newview/llpanelobjectinventory.cpp | 2 +- indra/newview/lltexturectrl.cpp | 2 +- 7 files changed, 35 insertions(+), 25 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index e007c58497..5844c58e09 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -713,7 +713,6 @@ void LLFolderView::draw() { if (!mViewModel->contentsReady() || getLastFilterGeneration() < getFolderViewModel()->getFilter()->getFirstSuccessGeneration()) { - // TODO RN: Get this from filter mStatusText = LLTrans::getString("Searching"); } else @@ -981,6 +980,7 @@ void LLFolderView::openSelectedItems( void ) void LLFolderView::propertiesSelectedItems( void ) { + //TODO RN: get working again //if(getVisible() && getEnabled()) //{ // if (mSelectedItems.size() == 1) diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index c5079712f5..5304613219 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -122,7 +122,6 @@ public: virtual void requestSortAll() = 0; virtual void sort(class LLFolderViewFolder*) = 0; - virtual void filter(class LLFolderViewFolder*) = 0; virtual bool contentsReady() = 0; virtual void setFolderView(LLFolderView* folder_view) = 0; @@ -208,12 +207,6 @@ public: } } - //TODO RN: fix this - void filter(LLFolderViewFolder* folder) - { - - } - protected: SortType mSorter; FilterType mFilter; @@ -264,7 +257,7 @@ public: virtual bool potentiallyVisible() = 0; // is the item definitely visible or we haven't made up our minds yet? - virtual void filter( LLFolderViewFilter& filter) = 0; + virtual bool filter( LLFolderViewFilter& filter) = 0; virtual bool passedFilter(S32 filter_generation = -1) = 0; virtual bool descendantsPassedFilter(S32 filter_generation = -1) = 0; virtual void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) = 0; @@ -306,8 +299,8 @@ class LLFolderViewModelItemCommon : public LLFolderViewModelItem public: LLFolderViewModelItemCommon() : mSortVersion(-1), - mPassedFilter(false), - mPassedFolderFilter(false), + mPassedFilter(true), + mPassedFolderFilter(true), mFolderViewItem(NULL), mLastFilterGeneration(-1), mMostFilteredDescendantGeneration(-1), diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 08f1e541b5..6a33130322 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -159,7 +159,7 @@ bool LLInventoryFilter::checkFolder(const LLUUID& folder_id) const // (e.g. versus in-world object contents). const LLViewerInventoryCategory *cat = gInventory.getCategory(folder_id); if (!cat) - return false; + return folder_id.isNull(); LLFolderType::EType cat_type = cat->getPreferredType(); if (cat_type != LLFolderType::FT_NONE && (1LL << cat_type & mFilterOps.mFilterCategoryTypes) == U64(0)) return false; @@ -1091,7 +1091,6 @@ void LLInventoryFilter::setEmptyLookupMessage(const std::string& message) mEmptyLookupMessage = message; } -// TODO RN: turn this into a param and move to llfolderviewmodelinterface std::string LLInventoryFilter::getEmptyLookupMessage() const { LLStringUtil::format_map_t args; diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 73e20fc684..e4cabcc988 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -1388,10 +1388,12 @@ void LLFolderViewModelItemInventory::setPassedFilter(bool passed, bool passed_fo mLastFilterGeneration = filter_generation; } -void LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter ) +bool LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter ) { + bool passed_filter_before = item->passedFilter(); S32 filter_generation = filter.getCurrentGeneration(); S32 must_pass_generation = filter.getFirstRequiredGeneration(); + bool changed = false; // mMostFilteredDescendantGeneration might have been reset // in which case we need to update it even for folders that @@ -1407,22 +1409,37 @@ void LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* ite } else { - //TODO RN: - item->filter( filter ); + changed |= item->filter( filter ); } } // track latest generation to pass any child items if (item->passedFilter()) { - mMostFilteredDescendantGeneration = filter_generation; - //TODO RN: ensure this still happens - //requestArrange(); + LLFolderViewModelItemInventory* view_model = this; + + while(view_model && view_model->mMostFilteredDescendantGeneration < filter_generation) + { + view_model->mMostFilteredDescendantGeneration = filter_generation; + view_model = static_cast(view_model->mParent); + } + } + + changed |= (item->passedFilter() != passed_filter_before); + if (changed) + { + //TODO RN: ensure this still happens, but without dependency on folderview + LLFolderViewFolder* parent = mFolderViewItem->getParentFolder(); + if (parent) parent->requestArrange(); } + + return changed; } -void LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) +bool LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) { + bool changed = false; + if(!mChildren.empty() && (getLastFilterGeneration() < filter.getFirstRequiredGeneration() // haven't checked descendants against minimum required generation to pass || descendantsPassedFilter(filter.getFirstRequiredGeneration()))) // or at least one descendant has passed the minimum requirement @@ -1432,7 +1449,7 @@ void LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) iter != mChildren.end() && filter.getFilterCount() > 0; ++iter) { - filterChildItem((*iter), filter); + changed |= filterChildItem((*iter), filter); } } @@ -1460,6 +1477,7 @@ void LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) //mStringMatchOffset = filter.getStringMatchOffset(this); filter.decrementFilterCount(); } + return changed; } LLFolderViewModelInventory* LLInventoryPanel::getFolderViewModel() diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 55edf386d5..3195d9a369 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -74,8 +74,8 @@ public: virtual bool passedFilter(S32 filter_generation = -1); virtual bool descendantsPassedFilter(S32 filter_generation = -1); virtual void setPassedFilter(bool filtered, bool filtered_folder, S32 filter_generation); - virtual void filter( LLFolderViewFilter& filter); - virtual void filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); + virtual bool filter( LLFolderViewFilter& filter); + virtual bool filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); protected: LLFolderViewModelInventory* mRootViewModel; }; diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index d0b9072ade..450e1f7ed0 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1566,7 +1566,7 @@ void LLPanelObjectInventory::reset() mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" //TODO RN: make this happen by manipulating filter object directly - //mFolders->getFilter()->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); + static_cast(mFolders->getFolderViewModel()->getFilter())->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); if (hasFocus()) diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 654b18614a..61a0331b72 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -637,7 +637,7 @@ void LLFloaterTexturePicker::draw() { folder_view->setPinningSelectedItem(mSelectedItemPinned); folder_view->getViewModelItem()->dirtyFilter(); - //TODO RN: test + //TODO RN: test..still works without this? //folder_view->arrangeFromRoot(); mSelectedItemPinned = TRUE; -- cgit v1.3 From 7d0150f12d8edcbd078ef570f7c64e44194e4335 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Mon, 2 Jul 2012 19:37:28 -0700 Subject: CHUI-101 WIP Make LLFolderView general purpose started to remove newview dependencies from llfolder* --- indra/newview/llfolderview.cpp | 196 +++++++-------------------- indra/newview/llfolderview.h | 12 +- indra/newview/llfolderviewitem.cpp | 96 +------------ indra/newview/llfolderviewitem.h | 1 - indra/newview/llfolderviewmodel.h | 13 +- indra/newview/llfolderviewmodelinventory.cpp | 81 +++++++++++ indra/newview/llinventoryfunctions.cpp | 88 +++++++++++- indra/newview/llinventoryfunctions.h | 7 + indra/newview/llinventorypanel.cpp | 13 +- indra/newview/llinventorypanel.h | 2 +- indra/newview/llpanellandmarks.cpp | 4 +- indra/newview/llpanelmaininventory.cpp | 4 +- indra/newview/llpanelobjectinventory.cpp | 2 +- 13 files changed, 245 insertions(+), 274 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 90c78d98b0..6bc89cdbca 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -26,34 +26,25 @@ #include "llviewerprecompiledheaders.h" -#include "llfolderview.h" #include "llfolderview.h" -#include "llcallbacklist.h" -#include "llinventorybridge.h" #include "llclipboard.h" // *TODO: remove this once hack below gone. -#include "llinventorypanel.h" -#include "llfoldertype.h" #include "llkeyboard.h" #include "lllineeditor.h" #include "llmenugl.h" #include "llpanel.h" -#include "llpreview.h" #include "llscrollcontainer.h" // hack to allow scrolling -#include "lltooldraganddrop.h" #include "lltrans.h" #include "llui.h" -#include "llviewertexture.h" -#include "llviewertexturelist.h" -#include "llviewerjointattachment.h" -#include "llviewermenu.h" #include "lluictrlfactory.h" -#include "llviewercontrol.h" -#include "llviewerfoldertype.h" -#include "llviewerwindow.h" -#include "llvoavatar.h" -#include "llfloaterproperties.h" -#include "llnotificationsutil.h" + +// TODO RN: kill these +// newview includes +#include "llcallbacklist.h" // per-frame on-idle +#include "llfloaterproperties.h" // showProperties +#include "llviewerwindow.h" // renamer popup handling +#include "llpreview.h" // openSelectedItems +#include "llinventorypanel.h" // idle loop for filtering, sort order declarations, etc. // Linden library includes #include "lldbstrings.h" @@ -251,7 +242,7 @@ LLFolderView::LLFolderView(const Params& p) // make the popup menu available - LLMenuGL* menu = LLUICtrlFactory::getInstance()->createFromFile("menu_inventory.xml", gMenuHolder, LLViewerMenuHolderGL::child_registry_t::instance()); + LLMenuGL* menu = LLUICtrlFactory::getInstance()->createFromFile("menu_inventory.xml", LLMenuGL::sMenuContainer, LLMenuHolderGL::child_registry_t::instance()); if (!menu) { menu = LLUICtrlFactory::getDefaultWidget("inventory_menu"); @@ -361,7 +352,7 @@ static LLFastTimer::DeclareTimer FTM_FILTER("Filter Folder View"); void LLFolderView::filter( LLFolderViewFilter& filter ) { LLFastTimer t2(FTM_FILTER); - filter.setFilterCount(llclamp(gSavedSettings.getS32("FilterItemsPerFrame"), 1, 5000)); + filter.setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); getViewModelItem()->filter(filter); } @@ -631,7 +622,7 @@ void LLFolderView::clearSelection() } std::set LLFolderView::getSelectionList() const - { +{ std::set selection; std::copy(mSelectedItems.begin(), mSelectedItems.end(), std::inserter(selection, selection.begin())); return selection; @@ -695,7 +686,7 @@ void LLFolderView::draw() } - if (mSearchTimer.getElapsedTimeF32() > gSavedSettings.getF32("TypeAheadTimeout") || !mSearchString.size()) + if (mSearchTimer.getElapsedTimeF32() > LLUI::sSettingGroups["config"]->getF32("TypeAheadTimeout") || !mSearchString.size()) { mSearchString.clear(); } @@ -767,14 +758,6 @@ void LLFolderView::closeRenamer( void ) } } -void LLFolderView::removeSelectedItems( void ) -{ - if (mSelectedItems.empty()) return; - LLSD args; - args["QUESTION"] = LLTrans::getString(mSelectedItems.size() > 1 ? "DeleteItems" : "DeleteItem"); - LLNotificationsUtil::add("DeleteItems", args, LLSD(), boost::bind(&LLFolderView::onItemsRemovalConfirmation, this, _1, _2)); -} - bool isDescendantOfASelectedItem(LLFolderViewItem* item, const std::vector& selectedItems) { LLFolderViewItem* item_parent = dynamic_cast(item->getParent()); @@ -820,11 +803,8 @@ void LLFolderView::removeCutItems() } } -void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LLSD& response) +void LLFolderView::removeSelectedItems() { - S32 option = LLNotificationsUtil::getSelectedOption(notification, response); - if (option != 0) return; // canceled - if(getVisible() && getEnabled()) { // just in case we're removing the renaming item. @@ -927,42 +907,44 @@ void LLFolderView::onItemsRemovalConfirmation(const LLSD& notification, const LL } } +// TODO RN: abstract // open the selected item. void LLFolderView::openSelectedItems( void ) { - if(getVisible() && getEnabled()) - { - if (mSelectedItems.size() == 1) - { - mSelectedItems.front()->openItem(); - } - else - { - LLMultiPreview* multi_previewp = new LLMultiPreview(); - LLMultiProperties* multi_propertiesp = new LLMultiProperties(); + //TODO RN: get working again + //if(getVisible() && getEnabled()) + //{ + // if (mSelectedItems.size() == 1) + // { + // mSelectedItems.front()->openItem(); + // } + // else + // { + // LLMultiPreview* multi_previewp = new LLMultiPreview(); + // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - // IT_{OBJECT,ATTACHMENT} creates LLProperties - // floaters; others create LLPreviews. Put - // each one in the right type of container. - LLFolderViewModelItemInventory* listener = static_cast((*item_it)->getViewModelItem()); - bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); - if (is_prop) - LLFloater::setFloaterHost(multi_propertiesp); - else - LLFloater::setFloaterHost(multi_previewp); - listener->openItem(); - } + // selected_items_t::iterator item_it; + // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + // { + // // IT_{OBJECT,ATTACHMENT} creates LLProperties + // // floaters; others create LLPreviews. Put + // // each one in the right type of container. + // LLFolderViewModelItemInventory* listener = static_cast((*item_it)->getViewModelItem()); + // bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); + // if (is_prop) + // LLFloater::setFloaterHost(multi_propertiesp); + // else + // LLFloater::setFloaterHost(multi_previewp); + // listener->openItem(); + // } - LLFloater::setFloaterHost(NULL); - // *NOTE: LLMulti* will safely auto-delete when open'd - // without any children. - multi_previewp->openFloater(LLSD()); - multi_propertiesp->openFloater(LLSD()); - } - } + // LLFloater::setFloaterHost(NULL); + // // *NOTE: LLMulti* will safely auto-delete when open'd + // // without any children. + // multi_previewp->openFloater(LLSD()); + // multi_propertiesp->openFloater(LLSD()); + // } + //} } void LLFolderView::propertiesSelectedItems( void ) @@ -994,15 +976,6 @@ void LLFolderView::propertiesSelectedItems( void ) //} } -void LLFolderView::changeType(LLInventoryModel *model, LLFolderType::EType new_folder_type) -{ - LLFolderBridge *folder_bridge = LLFolderBridge::sSelf.get(); - - if (!folder_bridge) return; - LLViewerInventoryCategory *cat = folder_bridge->getCategory(); - if (!cat) return; - cat->changeType(new_folder_type); -} void LLFolderView::autoOpenItem( LLFolderViewFolder* item ) { @@ -1521,7 +1494,7 @@ BOOL LLFolderView::handleUnicodeCharHere(llwchar uni_char) } //do text search - if (mSearchTimer.getElapsedTimeF32() > gSavedSettings.getF32("TypeAheadTimeout")) + if (mSearchTimer.getElapsedTimeF32() > LLUI::sSettingGroups["config"]->getF32("TypeAheadTimeout")) { mSearchString.clear(); } @@ -1831,81 +1804,6 @@ void LLFolderView::setShowSingleSelection(BOOL show) } } -bool LLFolderView::doToSelected(LLInventoryModel* model, const LLSD& userdata) -{ - std::string action = userdata.asString(); - - if ("rename" == action) - { - startRenamingSelectedItem(); - return true; - } - if ("delete" == action) - { - removeSelectedItems(); - return true; - } - if (("copy" == action) || ("cut" == action)) - { - // Clear the clipboard before we start adding things on it - LLClipboard::instance().reset(); - } - - static const std::string change_folder_string = "change_folder_type_"; - if (action.length() > change_folder_string.length() && - (action.compare(0,change_folder_string.length(),"change_folder_type_") == 0)) - { - LLFolderType::EType new_folder_type = LLViewerFolderType::lookupTypeFromXUIName(action.substr(change_folder_string.length())); - changeType(model, new_folder_type); - return true; - } - - - std::set selected_items = getSelectionList(); - - LLMultiPreview* multi_previewp = NULL; - LLMultiProperties* multi_propertiesp = NULL; - - if (("task_open" == action || "open" == action) && selected_items.size() > 1) - { - multi_previewp = new LLMultiPreview(); - gFloaterView->addChild(multi_previewp); - - LLFloater::setFloaterHost(multi_previewp); - - } - else if (("task_properties" == action || "properties" == action) && selected_items.size() > 1) - { - multi_propertiesp = new LLMultiProperties(); - gFloaterView->addChild(multi_propertiesp); - - LLFloater::setFloaterHost(multi_propertiesp); - } - - std::set::iterator set_iter; - - for (set_iter = selected_items.begin(); set_iter != selected_items.end(); ++set_iter) - { - LLFolderViewItem* folder_item = *set_iter; - if(!folder_item) continue; - LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getViewModelItem(); - if(!bridge) continue; - bridge->performAction(model, action); - } - - LLFloater::setFloaterHost(NULL); - if (multi_previewp) - { - multi_previewp->openFloater(LLSD()); - } - else if (multi_propertiesp) - { - multi_propertiesp->openFloater(LLSD()); - } - - return true; -} - static LLFastTimer::DeclareTimer FTM_AUTO_SELECT("Open and Select"); static LLFastTimer::DeclareTimer FTM_INVENTORY("Inventory"); diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 8a0317f840..e098119293 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -39,20 +39,17 @@ #include "lluictrl.h" #include "v4color.h" -#include "lldarray.h" #include "stdenums.h" #include "lldepthstack.h" #include "lleditmenuhandler.h" #include "llfontgl.h" #include "llscrollcontainer.h" #include "lltooldraganddrop.h" -#include "llviewertexture.h" class LLFolderViewModelInterface; class LLFolderViewFolder; class LLFolderViewItem; class LLFolderViewFilter; -class LLInventoryModel; class LLPanel; class LLLineEditor; class LLMenuGL; @@ -153,8 +150,9 @@ public: virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); virtual std::set getSelectionList() const; + S32 getNumSelectedItems() { return mSelectedItems.size(); } - // Make sure if ancestor is selected, descendents are not + // Make sure if ancestor is selected, descendants are not void sanitizeSelection(); virtual void clearSelection(); void addToSelectionList(LLFolderViewItem* item); @@ -173,9 +171,6 @@ public: void openSelectedItems( void ); void propertiesSelectedItems( void ); - // Change the folder type - void changeType(LLInventoryModel *model, LLFolderType::EType new_folder_type); - void autoOpenItem(LLFolderViewFolder* item); void closeAutoOpenedFolders(); BOOL autoOpenTest(LLFolderViewFolder* item); @@ -228,8 +223,6 @@ public: F32 getSelectionFadeElapsedTime() { return mMultiSelectionFadeTimer.getElapsedTimeF32(); } bool getUseEllipses() { return mUseEllipses; } - bool doToSelected(LLInventoryModel* model, const LLSD& userdata); - void doIdle(); // Real idle routine static void idle(void* user_data); // static glue to doIdle() @@ -270,7 +263,6 @@ protected: BOOL addNoOptions(LLMenuGL* menu) const; - void onItemsRemovalConfirmation(const LLSD& notification, const LLSD& response); protected: LLHandle mPopupMenuHandle; diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index 80893c3037..e84c765ac8 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -28,16 +28,9 @@ #include "llfolderviewitem.h" // viewer includes -#include "llfolderview.h" // Items depend extensively on LLFolderViews #include "llfolderview.h" #include "llfolderviewmodel.h" -#include "llviewerfoldertype.h" -#include "llinventorybridge.h" // for LLItemBridge in LLInventorySort::operator() -#include "llinventoryfunctions.h" -#include "llinventorymodelbackgroundfetch.h" #include "llpanel.h" -#include "llviewercontrol.h" // gSavedSettings -#include "llviewerwindow.h" // Argh, only for setCursor() // linden library includes #include "llclipboard.h" @@ -529,11 +522,11 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) if (can_drag) { - gViewerWindow->setCursor(UI_CURSOR_ARROW); + getWindow()->setCursor(UI_CURSOR_ARROW); } else { - gViewerWindow->setCursor(UI_CURSOR_NOLOCKED); + getWindow()->setCursor(UI_CURSOR_NOLOCKED); } return TRUE; } @@ -541,9 +534,9 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) { if (getRoot()) { - getRoot()->setShowSelectionContext(FALSE); + getRoot()->setShowSelectionContext(FALSE); } - gViewerWindow->setCursor(UI_CURSOR_ARROW); + getWindow()->setCursor(UI_CURSOR_ARROW); // let parent handle this then... return FALSE; } @@ -2075,84 +2068,3 @@ LLFolderViewItem* LLFolderViewFolder::getPreviousFromChild( LLFolderViewItem* it return result; } -bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) const -{ - // ignore sort order for landmarks in the Favorites folder. - // they should be always sorted as in Favorites bar. See EXT-719 - //TODO RN: fix sorting in favorites folder - //if (a->getSortGroup() == SG_ITEM - // && b->getSortGroup() == SG_ITEM - // && a->getInventoryType() == LLInventoryType::IT_LANDMARK - // && b->getInventoryType() == LLInventoryType::IT_LANDMARK) - //{ - - // static const LLUUID& favorites_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); - - // LLUUID a_uuid = a->getParentFolder()->getUUID(); - // LLUUID b_uuid = b->getParentFolder()->getUUID(); - - // if ((a_uuid == favorites_folder_id && b_uuid == favorites_folder_id)) - // { - // // *TODO: mantipov: probably it is better to add an appropriate method to LLFolderViewItem - // // or to LLInvFVBridge - // LLViewerInventoryItem* aitem = (static_cast(a))->getItem(); - // LLViewerInventoryItem* bitem = (static_cast(b))->getItem(); - // if (!aitem || !bitem) - // return false; - // S32 a_sort = aitem->getSortField(); - // S32 b_sort = bitem->getSortField(); - // return a_sort < b_sort; - // } - //} - - // We sort by name if we aren't sorting by date - // OR if these are folders and we are sorting folders by name. - bool by_name = (!mByDate - || (mFoldersByName - && (a->getSortGroup() != SG_ITEM))); - - if (a->getSortGroup() != b->getSortGroup()) - { - if (mSystemToTop) - { - // Group order is System Folders, Trash, Normal Folders, Items - return (a->getSortGroup() < b->getSortGroup()); - } - else if (mByDate) - { - // Trash needs to go to the bottom if we are sorting by date - if ( (a->getSortGroup() == SG_TRASH_FOLDER) - || (b->getSortGroup() == SG_TRASH_FOLDER)) - { - return (b->getSortGroup() == SG_TRASH_FOLDER); - } - } - } - - if (by_name) - { - S32 compare = LLStringUtil::compareDict(a->getDisplayName(), b->getDisplayName()); - if (0 == compare) - { - return (a->getCreationDate() > b->getCreationDate()); - } - else - { - return (compare < 0); - } - } - else - { - time_t first_create = a->getCreationDate(); - time_t second_create = b->getCreationDate(); - if (first_create == second_create) - { - return (LLStringUtil::compareDict(a->getDisplayName(), b->getDisplayName()) < 0); - } - else - { - return (first_create > second_create); - } - } -} - diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h index 581ec7239e..92923e82da 100644 --- a/indra/newview/llfolderviewitem.h +++ b/indra/newview/llfolderviewitem.h @@ -27,7 +27,6 @@ #define LLFOLDERVIEWITEM_H #include "llview.h" -#include "lldarray.h" // *TODO: Eliminate, forward declare #include "lluiimage.h" class LLFolderView; diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index 8a16ec3eff..98b7255137 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -22,18 +22,11 @@ * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ -#ifndef LLFOLDERVIEWEVENTLISTENER_H -#define LLFOLDERVIEWEVENTLISTENER_H +#ifndef LLFOLDERVIEWMODEL_H +#define LLFOLDERVIEWMODEL_H -#include "lldarray.h" // *TODO: convert to std::vector -#include "llfoldertype.h" #include "llfontgl.h" // just for StyleFlags enum #include "llfolderview.h" -#include "llfolderviewitem.h" -#include "llinventorytype.h" -#include "llpermissionsflags.h" -#include "llpointer.h" -#include "llwearabletype.h" #include "lltooldraganddrop.h" // These are grouping of inventory types. @@ -362,4 +355,4 @@ protected: }; -#endif +#endif // LLFOLDERVIEWMODEL_H diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index 7ee1a10b15..99831c61bf 100644 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -223,3 +223,84 @@ const LLFolderViewModelInventory* LLInventoryPanel::getFolderViewModel() const return &mInventoryViewModel; } +bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) const +{ + // ignore sort order for landmarks in the Favorites folder. + // they should be always sorted as in Favorites bar. See EXT-719 + //TODO RN: fix sorting in favorites folder + //if (a->getSortGroup() == SG_ITEM + // && b->getSortGroup() == SG_ITEM + // && a->getInventoryType() == LLInventoryType::IT_LANDMARK + // && b->getInventoryType() == LLInventoryType::IT_LANDMARK) + //{ + + // static const LLUUID& favorites_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_FAVORITE); + + // LLUUID a_uuid = a->getParentFolder()->getUUID(); + // LLUUID b_uuid = b->getParentFolder()->getUUID(); + + // if ((a_uuid == favorites_folder_id && b_uuid == favorites_folder_id)) + // { + // // *TODO: mantipov: probably it is better to add an appropriate method to LLFolderViewItem + // // or to LLInvFVBridge + // LLViewerInventoryItem* aitem = (static_cast(a))->getItem(); + // LLViewerInventoryItem* bitem = (static_cast(b))->getItem(); + // if (!aitem || !bitem) + // return false; + // S32 a_sort = aitem->getSortField(); + // S32 b_sort = bitem->getSortField(); + // return a_sort < b_sort; + // } + //} + + // We sort by name if we aren't sorting by date + // OR if these are folders and we are sorting folders by name. + bool by_name = (!mByDate + || (mFoldersByName + && (a->getSortGroup() != SG_ITEM))); + + if (a->getSortGroup() != b->getSortGroup()) + { + if (mSystemToTop) + { + // Group order is System Folders, Trash, Normal Folders, Items + return (a->getSortGroup() < b->getSortGroup()); + } + else if (mByDate) + { + // Trash needs to go to the bottom if we are sorting by date + if ( (a->getSortGroup() == SG_TRASH_FOLDER) + || (b->getSortGroup() == SG_TRASH_FOLDER)) + { + return (b->getSortGroup() == SG_TRASH_FOLDER); + } + } + } + + if (by_name) + { + S32 compare = LLStringUtil::compareDict(a->getDisplayName(), b->getDisplayName()); + if (0 == compare) + { + return (a->getCreationDate() > b->getCreationDate()); + } + else + { + return (compare < 0); + } + } + else + { + time_t first_create = a->getCreationDate(); + time_t second_create = b->getCreationDate(); + if (first_create == second_create) + { + return (LLStringUtil::compareDict(a->getDisplayName(), b->getDisplayName()) < 0); + } + else + { + return (first_create > second_create); + } + } +} + diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp index ff461236a2..07f3dd8ffb 100644 --- a/indra/newview/llinventoryfunctions.cpp +++ b/indra/newview/llinventoryfunctions.cpp @@ -45,7 +45,7 @@ // newview includes #include "llappearancemgr.h" #include "llappviewer.h" -//#include "llfirstuse.h" +#include "llclipboard.h" #include "llfloaterinventory.h" #include "llfloatersidepanelcontainer.h" #include "llfocusmgr.h" @@ -74,8 +74,10 @@ #include "llsidepanelinventory.h" #include "lltabcontainer.h" #include "lltooldraganddrop.h" +#include "lltrans.h" #include "lluictrlfactory.h" #include "llviewermessage.h" +#include "llviewerfoldertype.h" #include "llviewerobjectlist.h" #include "llviewerregion.h" #include "llviewerwindow.h" @@ -1044,3 +1046,87 @@ void LLOpenFoldersWithSelection::doFolder(LLFolderViewFolder* folder) } } +void LLInventoryAction::doToSelected(LLInventoryModel* model, LLFolderView* root, const std::string& action) +{ + if ("rename" == action) + { + root->startRenamingSelectedItem(); + return; + } + if ("delete" == action) + { + LLSD args; + args["QUESTION"] = LLTrans::getString(root->getNumSelectedItems() > 1 ? "DeleteItems" : "DeleteItem"); + LLNotificationsUtil::add("DeleteItems", args, LLSD(), boost::bind(&LLInventoryAction::onItemsRemovalConfirmation, _1, _2, root)); + return; + } + if (("copy" == action) || ("cut" == action)) + { + // Clear the clipboard before we start adding things on it + LLClipboard::instance().reset(); + } + + static const std::string change_folder_string = "change_folder_type_"; + if (action.length() > change_folder_string.length() && + (action.compare(0,change_folder_string.length(),"change_folder_type_") == 0)) + { + LLFolderType::EType new_folder_type = LLViewerFolderType::lookupTypeFromXUIName(action.substr(change_folder_string.length())); + LLFolderViewModelItemInventory* inventory_item = static_cast(root->getViewModelItem()); + LLViewerInventoryCategory *cat = model->getCategory(inventory_item->getUUID()); + if (!cat) return; + cat->changeType(new_folder_type); + return; + } + + + std::set selected_items = root->getSelectionList(); + + LLMultiPreview* multi_previewp = NULL; + LLMultiProperties* multi_propertiesp = NULL; + + if (("task_open" == action || "open" == action) && selected_items.size() > 1) + { + multi_previewp = new LLMultiPreview(); + gFloaterView->addChild(multi_previewp); + + LLFloater::setFloaterHost(multi_previewp); + + } + else if (("task_properties" == action || "properties" == action) && selected_items.size() > 1) + { + multi_propertiesp = new LLMultiProperties(); + gFloaterView->addChild(multi_propertiesp); + + LLFloater::setFloaterHost(multi_propertiesp); + } + + std::set::iterator set_iter; + + for (set_iter = selected_items.begin(); set_iter != selected_items.end(); ++set_iter) + { + LLFolderViewItem* folder_item = *set_iter; + if(!folder_item) continue; + LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getViewModelItem(); + if(!bridge) continue; + bridge->performAction(model, action); + } + + LLFloater::setFloaterHost(NULL); + if (multi_previewp) + { + multi_previewp->openFloater(LLSD()); + } + else if (multi_propertiesp) + { + multi_propertiesp->openFloater(LLSD()); + } +} + +void LLInventoryAction::onItemsRemovalConfirmation( const LLSD& notification, const LLSD& response, LLFolderView* root ) +{ + S32 option = LLNotificationsUtil::getSelectedOption(notification, response); + if (option == 0) + { + root->removeSelectedItems(); + } +} diff --git a/indra/newview/llinventoryfunctions.h b/indra/newview/llinventoryfunctions.h index c6b1da0417..d8d3d9bbbb 100644 --- a/indra/newview/llinventoryfunctions.h +++ b/indra/newview/llinventoryfunctions.h @@ -427,6 +427,13 @@ public: static LLUUID sWearNewClothingTransactionID; // wear all clothing in this transaction }; +struct LLInventoryAction +{ + static void doToSelected(class LLInventoryModel* model, class LLFolderView* root, const std::string& action); + + static void onItemsRemovalConfirmation(const LLSD& notification, const LLSD& response, LLFolderView* root); +}; + #endif // LL_LLINVENTORYFUNCTIONS_H diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index b5fcf364dd..ef8c5dc1cf 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -44,6 +44,7 @@ #include "llinventorybridge.h" #include "llinventoryfunctions.h" #include "llinventorymodelbackgroundfetch.h" +#include "llpreview.h" #include "llsidepanelinventory.h" #include "llviewerattachmenu.h" #include "llviewerfoldertype.h" @@ -926,11 +927,6 @@ void LLInventoryPanel::onSelectionChange(const std::deque& it } } -void LLInventoryPanel::doToSelected(const LLSD& userdata) -{ - mFolderRoot->doToSelected(&gInventory, userdata); -} - void LLInventoryPanel::doCreate(const LLSD& userdata) { menu_create_inventory_item(this, LLFolderBridge::sSelf.get(), userdata); @@ -1260,6 +1256,13 @@ void LLInventoryPanel::updateSelection() } } +void LLInventoryPanel::doToSelected(const LLSD& userdata) +{ + LLInventoryAction::doToSelected(mInventory, mFolderRoot, userdata.asString()); + + return; +} + /************************************************************************/ /* Recent Inventory Panel related class */ diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index a62b97aa7d..58c1201e54 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -176,7 +176,7 @@ public: LLFolderViewFolder* getFolderByID(const LLUUID& id); void setSelectionByID(const LLUUID& obj_id, BOOL take_keyboard_focus); void updateSelection(); - + LLFolderViewModelInventory* getFolderViewModel(); const LLFolderViewModelInventory* getFolderViewModel() const; diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 0b899d34f4..faef923338 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -851,7 +851,7 @@ void LLLandmarksPanel::onClipboardAction(const LLSD& userdata) const } else { - mCurrentSelectedList->getRootFolder()->doToSelected(mCurrentSelectedList->getModel(),command_name); + mCurrentSelectedList->doToSelected(command_name); } } @@ -896,7 +896,7 @@ void LLLandmarksPanel::onFoldingAction(const LLSD& userdata) { if(mCurrentSelectedList) { - mCurrentSelectedList->getRootFolder()->doToSelected(&gInventory, userdata); + mCurrentSelectedList->doToSelected(userdata); } } } diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index 6cef1f877b..fea27b37d3 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -294,7 +294,7 @@ BOOL LLPanelMainInventory::handleKeyHere(KEY key, MASK mask) void LLPanelMainInventory::doToSelected(const LLSD& userdata) { - getPanel()->getRootFolder()->doToSelected(&gInventory, userdata); + getPanel()->doToSelected(userdata); } void LLPanelMainInventory::closeAllFolders() @@ -970,7 +970,7 @@ void LLPanelMainInventory::onTrashButtonClick() void LLPanelMainInventory::onClipboardAction(const LLSD& userdata) { std::string command_name = userdata.asString(); - getActivePanel()->getRootFolder()->doToSelected(getActivePanel()->getModel(),command_name); + getActivePanel()->doToSelected(command_name); } void LLPanelMainInventory::saveTexture(const LLSD& userdata) diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 450e1f7ed0..002c0c1113 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1522,7 +1522,7 @@ BOOL LLPanelObjectInventory::postBuild() void LLPanelObjectInventory::doToSelected(const LLSD& userdata) { - mFolders->doToSelected(&gInventory, userdata); + LLInventoryAction::doToSelected(&gInventory, mFolders, userdata.asString()); } void LLPanelObjectInventory::clearContents() -- cgit v1.3 From 1494a1058f41c5aa00a8ed08fe71123f63e92e81 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Tue, 3 Jul 2012 23:55:39 -0700 Subject: CHUI-101 WIP Make LLFolderview general purpose move llfolderview* into LLUI! --- indra/llui/CMakeLists.txt | 6 + indra/llui/llfolderview.cpp | 2078 +++++++++++++++++++++++++ indra/llui/llfolderview.h | 388 +++++ indra/llui/llfolderviewitem.cpp | 2032 +++++++++++++++++++++++++ indra/llui/llfolderviewitem.h | 420 +++++ indra/llui/llfolderviewmodel.cpp | 53 + indra/llui/llfolderviewmodel.h | 353 +++++ indra/newview/CMakeLists.txt | 6 - indra/newview/llfolderview.cpp | 2105 -------------------------- indra/newview/llfolderview.h | 393 ----- indra/newview/llfolderviewitem.cpp | 2060 ------------------------- indra/newview/llfolderviewitem.h | 418 ----- indra/newview/llfolderviewmodel.cpp | 53 - indra/newview/llfolderviewmodel.h | 357 ----- indra/newview/llfolderviewmodelinventory.cpp | 26 + indra/newview/llfolderviewmodelinventory.h | 13 +- indra/newview/llimfloatercontainer.h | 9 - indra/newview/llinventorybridge.h | 3 +- indra/newview/llinventorypanel.cpp | 19 +- indra/newview/llpanelobjectinventory.cpp | 2 +- indra/newview/lltexturectrl.cpp | 1 + 21 files changed, 5389 insertions(+), 5406 deletions(-) create mode 100644 indra/llui/llfolderview.cpp create mode 100644 indra/llui/llfolderview.h create mode 100644 indra/llui/llfolderviewitem.cpp create mode 100644 indra/llui/llfolderviewitem.h create mode 100644 indra/llui/llfolderviewmodel.cpp create mode 100644 indra/llui/llfolderviewmodel.h delete mode 100644 indra/newview/llfolderview.cpp delete mode 100644 indra/newview/llfolderview.h delete mode 100644 indra/newview/llfolderviewitem.cpp delete mode 100644 indra/newview/llfolderviewitem.h delete mode 100644 indra/newview/llfolderviewmodel.cpp delete mode 100644 indra/newview/llfolderviewmodel.h (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt index b50ed2342d..a9ad0a3c0b 100644 --- a/indra/llui/CMakeLists.txt +++ b/indra/llui/CMakeLists.txt @@ -54,6 +54,9 @@ set(llui_SOURCE_FILES llfloaterreglistener.cpp llflyoutbutton.cpp llfocusmgr.cpp + llfolderview.cpp + llfolderviewitem.cpp + llfolderviewmodel.cpp llfunctorregistry.cpp lliconctrl.cpp llkeywords.cpp @@ -154,6 +157,9 @@ set(llui_HEADER_FILES llfloaterreglistener.h llflyoutbutton.h llfocusmgr.h + llfolderview.h + llfolderviewitem.h + llfolderviewmodel.h llfunctorregistry.h llhandle.h llhelp.h diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp new file mode 100644 index 0000000000..0d3bc44ae4 --- /dev/null +++ b/indra/llui/llfolderview.cpp @@ -0,0 +1,2078 @@ +/** + * @file llfolderview.cpp + * @brief Implementation of the folder view collection of classes. + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#include "linden_common.h" + +#include "llfolderview.h" +#include "llfolderviewmodel.h" +#include "llclipboard.h" // *TODO: remove this once hack below gone. +#include "llkeyboard.h" +#include "lllineeditor.h" +#include "llmenugl.h" +#include "llpanel.h" +#include "llscrollcontainer.h" // hack to allow scrolling +#include "lltextbox.h" +#include "lltrans.h" +#include "llui.h" +#include "lluictrlfactory.h" + +// Linden library includes +#include "lldbstrings.h" +#include "llfocusmgr.h" +#include "llfontgl.h" +#include "llgl.h" +#include "llrender.h" + +// Third-party library includes +#include + +///---------------------------------------------------------------------------- +/// Local function declarations, constants, enums, and typedefs +///---------------------------------------------------------------------------- + +const S32 RENAME_WIDTH_PAD = 4; +const S32 RENAME_HEIGHT_PAD = 1; +const S32 AUTO_OPEN_STACK_DEPTH = 16; +const S32 MIN_ITEM_WIDTH_VISIBLE = LLFolderViewItem::ICON_WIDTH + + LLFolderViewItem::ICON_PAD + + LLFolderViewItem::ARROW_SIZE + + LLFolderViewItem::TEXT_PAD + + /*first few characters*/ 40; +const S32 MINIMUM_RENAMER_WIDTH = 80; + +// *TODO: move in params in xml if necessary. Requires modification of LLFolderView & LLInventoryPanel Params. +const S32 STATUS_TEXT_HPAD = 6; +const S32 STATUS_TEXT_VPAD = 8; + +enum { + SIGNAL_NO_KEYBOARD_FOCUS = 1, + SIGNAL_KEYBOARD_FOCUS = 2 +}; + +F32 LLFolderView::sAutoOpenTime = 1.f; + +//--------------------------------------------------------------------------- + +// Tells all folders in a folderview to close themselves +// For efficiency, calls setOpenArrangeRecursively(). +// The calling function must then call: +// LLFolderView* root = getRoot(); +// if( root ) +// { +// root->arrange( NULL, NULL ); +// root->scrollToShowSelection(); +// } +// to patch things up. +class LLCloseAllFoldersFunctor : public LLFolderViewFunctor +{ +public: + LLCloseAllFoldersFunctor(BOOL close) { mOpen = !close; } + virtual ~LLCloseAllFoldersFunctor() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); + + BOOL mOpen; +}; + + +void LLCloseAllFoldersFunctor::doFolder(LLFolderViewFolder* folder) +{ + folder->setOpenArrangeRecursively(mOpen); +} + +// Do nothing. +void LLCloseAllFoldersFunctor::doItem(LLFolderViewItem* item) +{ } + +///---------------------------------------------------------------------------- +/// Class LLFolderViewScrollContainer +///---------------------------------------------------------------------------- + +// virtual +const LLRect LLFolderViewScrollContainer::getScrolledViewRect() const +{ + LLRect rect = LLRect::null; + if (mScrolledView) + { + LLFolderView* folder_view = dynamic_cast(mScrolledView); + if (folder_view) + { + S32 height = folder_view->getRect().getHeight(); + + rect = mScrolledView->getRect(); + rect.setLeftTopAndSize(rect.mLeft, rect.mTop, rect.getWidth(), height); + } + } + + return rect; +} + +LLFolderViewScrollContainer::LLFolderViewScrollContainer(const LLScrollContainer::Params& p) +: LLScrollContainer(p) +{} + +///---------------------------------------------------------------------------- +/// Class LLFolderView +///---------------------------------------------------------------------------- +LLFolderView::Params::Params() +: title("title"), + use_label_suffix("use_label_suffix"), + allow_multiselect("allow_multiselect", true), + show_empty_message("show_empty_message", true), + use_ellipses("use_ellipses", false) +{ + folder_indentation = -4; +} + + +// Default constructor +LLFolderView::LLFolderView(const Params& p) +: LLFolderViewFolder(p), + mScrollContainer( NULL ), + mPopupMenuHandle(), + mAllowMultiSelect(p.allow_multiselect), + mShowEmptyMessage(p.show_empty_message), + mShowFolderHierarchy(FALSE), + mRenameItem( NULL ), + mNeedsScroll( FALSE ), + mUseLabelSuffix(p.use_label_suffix), + mPinningSelectedItem(FALSE), + mNeedsAutoSelect( FALSE ), + mAutoSelectOverride(FALSE), + mNeedsAutoRename(FALSE), + mShowSelectionContext(FALSE), + mShowSingleSelection(FALSE), + mArrangeGeneration(0), + mSignalSelectCallback(0), + mMinWidth(0), + mDragAndDropThisFrame(FALSE), + mCallbackRegistrar(NULL), + mParentPanel(p.parent_panel), + mUseEllipses(p.use_ellipses), + mDraggingOverItem(NULL), + mStatusTextBox(NULL), + mShowItemLinkOverlays(p.show_item_link_overlays), + mViewModel(p.view_model) +{ + mViewModel->setFolderView(this); + mRoot = this; + + LLRect rect = p.rect; + LLRect new_rect(rect.mLeft, rect.mBottom + getRect().getHeight(), rect.mLeft + getRect().getWidth(), rect.mBottom); + setRect( rect ); + reshape(rect.getWidth(), rect.getHeight()); + mAutoOpenItems.setDepth(AUTO_OPEN_STACK_DEPTH); + mAutoOpenCandidate = NULL; + mAutoOpenTimer.stop(); + mKeyboardSelection = FALSE; + mIndentation = p.folder_indentation; + + //clear label + // go ahead and render root folder as usual + // just make sure the label ("Inventory Folder") never shows up + mLabel = LLStringUtil::null; + + // Escape is handled by reverting the rename, not commiting it (default behavior) + LLLineEditor::Params params; + params.name("ren"); + params.rect(rect); + params.font(getLabelFontForStyle(LLFontGL::NORMAL)); + params.max_length.bytes(DB_INV_ITEM_NAME_STR_LEN); + params.commit_callback.function(boost::bind(&LLFolderView::commitRename, this, _2)); + params.prevalidate_callback(&LLTextValidate::validateASCIIPrintableNoPipe); + params.commit_on_focus_lost(true); + params.visible(false); + mRenamer = LLUICtrlFactory::create (params); + addChild(mRenamer); + + // Textbox + LLTextBox::Params text_p; + LLFontGL* font = getLabelFontForStyle(mLabelStyle); + LLRect new_r = LLRect(rect.mLeft + ICON_PAD, + rect.mTop - TEXT_PAD, + rect.mRight, + rect.mTop - TEXT_PAD - font->getLineHeight()); + text_p.rect(new_r); + text_p.name(std::string(p.name)); + text_p.font(font); + text_p.visible(false); + text_p.parse_urls(true); + text_p.wrap(true); // allow multiline text. See EXT-7564, EXT-7047 + // set text padding the same as in People panel. EXT-7047, EXT-4837 + text_p.h_pad(STATUS_TEXT_HPAD); + text_p.v_pad(STATUS_TEXT_VPAD); + mStatusTextBox = LLUICtrlFactory::create (text_p); + mStatusTextBox->setFollowsLeft(); + mStatusTextBox->setFollowsTop(); + //addChild(mStatusTextBox); + + + // make the popup menu available + LLMenuGL* menu = LLUICtrlFactory::getInstance()->createFromFile("menu_inventory.xml", LLMenuGL::sMenuContainer, LLMenuHolderGL::child_registry_t::instance()); + if (!menu) + { + menu = LLUICtrlFactory::getDefaultWidget("inventory_menu"); + } + menu->setBackgroundColor(LLUIColorTable::instance().getColor("MenuPopupBgColor")); + mPopupMenuHandle = menu->getHandle(); + + mViewModelItem->openItem(); +} + +// Destroys the object +LLFolderView::~LLFolderView( void ) +{ + closeRenamer(); + + // The release focus call can potentially call the + // scrollcontainer, which can potentially be called with a partly + // destroyed scollcontainer. Just null it out here, and no worries + // about calling into the invalid scroll container. + // Same with the renamer. + mScrollContainer = NULL; + mRenameItem = NULL; + mRenamer = NULL; + mStatusTextBox = NULL; + + mAutoOpenItems.removeAllNodes(); + + if (mPopupMenuHandle.get()) mPopupMenuHandle.get()->die(); + + mAutoOpenItems.removeAllNodes(); + clearSelection(); + mItems.clear(); + mFolders.clear(); + + delete mViewModel; + mViewModel = NULL; +} + +BOOL LLFolderView::canFocusChildren() const +{ + return FALSE; +} + +BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) +{ + LLFolderViewFolder::addFolder(folder); + + // TODO RN: enforce sort order of My Inventory followed by Library + //mFolders.remove(folder); + //if (((LLFolderViewModelItemInventory*)folder->getViewModelItem())->getUUID() == gInventory.getLibraryRootFolderID()) + //{ + // mFolders.push_back(folder); + //} + //else + //{ + // mFolders.insert(mFolders.begin(), folder); + //} + + return TRUE; +} + +void LLFolderView::closeAllFolders() +{ + // Close all the folders + setOpenArrangeRecursively(FALSE, LLFolderViewFolder::RECURSE_DOWN); + arrangeAll(); +} + +void LLFolderView::openTopLevelFolders() +{ + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + (*fit)->setOpen(TRUE); + } +} + +// This view grows and shrinks to enclose all of its children items and folders. +// *width should be 0 +// conform show folder state works +S32 LLFolderView::arrange( S32* unused_width, S32* unused_height ) +{ + mMinWidth = 0; + S32 target_height; + + LLFolderViewFolder::arrange(&mMinWidth, &target_height); + + LLRect scroll_rect = mScrollContainer->getContentWindowRect(); + reshape( llmax(scroll_rect.getWidth(), mMinWidth), llround(mCurHeight) ); + + LLRect new_scroll_rect = mScrollContainer->getContentWindowRect(); + if (new_scroll_rect.getWidth() != scroll_rect.getWidth()) + { + reshape( llmax(scroll_rect.getWidth(), mMinWidth), llround(mCurHeight) ); + } + + // move item renamer text field to item's new position + updateRenamerPosition(); + + return llround(mTargetHeight); +} + +static LLFastTimer::DeclareTimer FTM_FILTER("Filter Folder View"); + +void LLFolderView::filter( LLFolderViewFilter& filter ) +{ + LLFastTimer t2(FTM_FILTER); + filter.setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); + + getViewModelItem()->filter(filter); +} + +void LLFolderView::reshape(S32 width, S32 height, BOOL called_from_parent) +{ + LLRect scroll_rect; + if (mScrollContainer) + { + LLView::reshape(width, height, called_from_parent); + scroll_rect = mScrollContainer->getContentWindowRect(); + } + width = llmax(mMinWidth, scroll_rect.getWidth()); + height = llmax(llround(mCurHeight), scroll_rect.getHeight()); + + // Restrict width within scroll container's width + if (mUseEllipses && mScrollContainer) + { + width = scroll_rect.getWidth(); + } + + LLView::reshape(width, height, called_from_parent); + mReshapeSignal(mSelectedItems, FALSE); +} + +void LLFolderView::addToSelectionList(LLFolderViewItem* item) +{ + if (item->isSelected()) + { + removeFromSelectionList(item); + } + if (mSelectedItems.size()) + { + mSelectedItems.back()->setIsCurSelection(FALSE); + } + item->setIsCurSelection(TRUE); + mSelectedItems.push_back(item); +} + +void LLFolderView::removeFromSelectionList(LLFolderViewItem* item) +{ + if (mSelectedItems.size()) + { + mSelectedItems.back()->setIsCurSelection(FALSE); + } + + selected_items_t::iterator item_iter; + for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end();) + { + if (*item_iter == item) + { + item_iter = mSelectedItems.erase(item_iter); + } + else + { + ++item_iter; + } + } + if (mSelectedItems.size()) + { + mSelectedItems.back()->setIsCurSelection(TRUE); + } +} + +LLFolderViewItem* LLFolderView::getCurSelectedItem( void ) +{ + if(mSelectedItems.size()) + { + LLFolderViewItem* itemp = mSelectedItems.back(); + llassert(itemp->getIsCurSelection()); + return itemp; + } + return NULL; +} + + +// Record the selected item and pass it down the hierachy. +BOOL LLFolderView::setSelection(LLFolderViewItem* selection, BOOL openitem, + BOOL take_keyboard_focus) +{ + mSignalSelectCallback = take_keyboard_focus ? SIGNAL_KEYBOARD_FOCUS : SIGNAL_NO_KEYBOARD_FOCUS; + + if( selection == this ) + { + return FALSE; + } + + if( selection && take_keyboard_focus) + { + mParentPanel->setFocus(TRUE); + } + + // clear selection down here because change of keyboard focus can potentially + // affect selection + clearSelection(); + + if(selection) + { + addToSelectionList(selection); + } + + BOOL rv = LLFolderViewFolder::setSelection(selection, openitem, take_keyboard_focus); + if(openitem && selection) + { + selection->getParentFolder()->requestArrange(); + } + + llassert(mSelectedItems.size() <= 1); + + return rv; +} + +BOOL LLFolderView::changeSelection(LLFolderViewItem* selection, BOOL selected) +{ + BOOL rv = FALSE; + + // can't select root folder + if(!selection || selection == this) + { + return FALSE; + } + + if (!mAllowMultiSelect) + { + clearSelection(); + } + + selected_items_t::iterator item_iter; + for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end(); ++item_iter) + { + if (*item_iter == selection) + { + break; + } + } + + BOOL on_list = (item_iter != mSelectedItems.end()); + + if(selected && !on_list) + { + addToSelectionList(selection); + } + if(!selected && on_list) + { + removeFromSelectionList(selection); + } + + rv = LLFolderViewFolder::changeSelection(selection, selected); + + mSignalSelectCallback = SIGNAL_KEYBOARD_FOCUS; + + return rv; +} + +static LLFastTimer::DeclareTimer FTM_SANITIZE_SELECTION("Sanitize Selection"); +void LLFolderView::sanitizeSelection() +{ + LLFastTimer _(FTM_SANITIZE_SELECTION); + // store off current item in case it is automatically deselected + // and we want to preserve context + LLFolderViewItem* original_selected_item = getCurSelectedItem(); + + std::vector items_to_remove; + selected_items_t::iterator item_iter; + for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end(); ++item_iter) + { + LLFolderViewItem* item = *item_iter; + + // ensure that each ancestor is open and potentially passes filtering + BOOL visible = item->getViewModelItem()->potentiallyVisible(); // initialize from filter state for this item + // modify with parent open and filters states + LLFolderViewFolder* parent_folder = item->getParentFolder(); + // Move up through parent folders and see what's visible + while(parent_folder) + { + visible = visible && parent_folder->isOpen() && parent_folder->getViewModelItem()->potentiallyVisible(); + parent_folder = parent_folder->getParentFolder(); + } + + // deselect item if any ancestor is closed or didn't pass filter requirements. + if (!visible) + { + items_to_remove.push_back(item); + } + + // disallow nested selections (i.e. folder items plus one or more ancestors) + // could check cached mum selections count and only iterate if there are any + // but that may be a premature optimization. + selected_items_t::iterator other_item_iter; + for (other_item_iter = mSelectedItems.begin(); other_item_iter != mSelectedItems.end(); ++other_item_iter) + { + LLFolderViewItem* other_item = *other_item_iter; + for( parent_folder = other_item->getParentFolder(); parent_folder; parent_folder = parent_folder->getParentFolder()) + { + if (parent_folder == item) + { + // this is a descendent of the current folder, remove from list + items_to_remove.push_back(other_item); + break; + } + } + } + + // Don't allow invisible items (such as root folders) to be selected. + if (item == getRoot()) + { + items_to_remove.push_back(item); + } + } + + std::vector::iterator item_it; + for (item_it = items_to_remove.begin(); item_it != items_to_remove.end(); ++item_it ) + { + changeSelection(*item_it, FALSE); // toggle selection (also removes from list) + } + + // if nothing selected after prior constraints... + if (mSelectedItems.empty()) + { + // ...select first available parent of original selection + LLFolderViewItem* new_selection = NULL; + if (original_selected_item) + { + for(LLFolderViewFolder* parent_folder = original_selected_item->getParentFolder(); + parent_folder; + parent_folder = parent_folder->getParentFolder()) + { + if (parent_folder->getViewModelItem()->potentiallyVisible()) + { + // give initial selection to first ancestor folder that potentially passes the filter + if (!new_selection) + { + new_selection = parent_folder; + } + + // if any ancestor folder of original item is closed, move the selection up + // to the highest closed + if (!parent_folder->isOpen()) + { + new_selection = parent_folder; + } + } + } + } + else + { + new_selection = NULL; + } + + if (new_selection) + { + setSelection(new_selection, FALSE, FALSE); + } + } +} + +void LLFolderView::clearSelection() +{ + for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); + item_it != mSelectedItems.end(); + ++item_it) + { + (*item_it)->setUnselected(); + } + + mSelectedItems.clear(); +} + +std::set LLFolderView::getSelectionList() const +{ + std::set selection; + std::copy(mSelectedItems.begin(), mSelectedItems.end(), std::inserter(selection, selection.begin())); + return selection; +} + +bool LLFolderView::startDrag() +{ + std::vector selected_items; + selected_items_t::iterator item_it; + + if (!mSelectedItems.empty()) + { + for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + { + selected_items.push_back((*item_it)->getViewModelItem()); + } + + return getFolderViewModel()->startDrag(selected_items); + } + return false; +} + +void LLFolderView::commitRename( const LLSD& data ) +{ + finishRenamingItem(); +} + +void LLFolderView::draw() +{ + //LLFontGL* font = getLabelFontForStyle(mLabelStyle); + + // if cursor has moved off of me during drag and drop + // close all auto opened folders + if (!mDragAndDropThisFrame) + { + closeAutoOpenedFolders(); + } + + if (mSearchTimer.getElapsedTimeF32() > LLUI::sSettingGroups["config"]->getF32("TypeAheadTimeout") || !mSearchString.size()) + { + mSearchString.clear(); + } + + if (hasVisibleChildren()) + { + mStatusTextBox->setVisible( FALSE ); + } + else if (mShowEmptyMessage) + { + mStatusTextBox->setValue(getFolderViewModel()->getStatusText()); + mStatusTextBox->setVisible( TRUE ); + + // firstly reshape message textbox with current size. This is necessary to + // LLTextBox::getTextPixelHeight works properly + const LLRect local_rect = getLocalRect(); + mStatusTextBox->setShape(local_rect); + + // get preferable text height... + S32 pixel_height = mStatusTextBox->getTextPixelHeight(); + bool height_changed = local_rect.getHeight() != pixel_height; + if (height_changed) + { + // ... if it does not match current height, lets rearrange current view. + // This will indirectly call ::arrange and reshape of the status textbox. + // We should call this method to also notify parent about required rect. + // See EXT-7564, EXT-7047. + S32 height = 0; + S32 width = 0; + S32 total_height = arrange( &width, &height ); + notifyParent(LLSD().with("action", "size_changes").with("height", total_height)); + + LLUI::popMatrix(); + LLUI::pushMatrix(); + LLUI::translate((F32)getRect().mLeft, (F32)getRect().mBottom); + } + } + + // skip over LLFolderViewFolder::draw since we don't want the folder icon, label, + // and arrow for the root folder + LLView::draw(); + + mDragAndDropThisFrame = FALSE; +} + +void LLFolderView::finishRenamingItem( void ) +{ + if(!mRenamer) + { + return; + } + if( mRenameItem ) + { + mRenameItem->rename( mRenamer->getText() ); + } + + closeRenamer(); + + // List is re-sorted alphabetically, so scroll to make sure the selected item is visible. + scrollToShowSelection(); +} + +void LLFolderView::closeRenamer( void ) +{ + if (mRenamer && mRenamer->getVisible()) + { + // Triggers onRenamerLost() that actually closes the renamer. + LLUI::removePopup(mRenamer); + } +} + +bool isDescendantOfASelectedItem(LLFolderViewItem* item, const std::vector& selectedItems) +{ + LLFolderViewItem* item_parent = dynamic_cast(item->getParent()); + + if (item_parent) + { + for(std::vector::const_iterator it = selectedItems.begin(); it != selectedItems.end(); ++it) + { + const LLFolderViewItem* const selected_item = (*it); + + LLFolderViewItem* parent = item_parent; + + while (parent) + { + if (selected_item == parent) + { + return true; + } + + parent = dynamic_cast(parent->getParent()); + } + } + } + + return false; +} + +void LLFolderView::removeSelectedItems() +{ + if(getVisible() && getEnabled()) + { + // just in case we're removing the renaming item. + mRenameItem = NULL; + + // create a temporary structure which we will use to remove + // items, since the removal will futz with internal data + // structures. + std::vector items; + S32 count = mSelectedItems.size(); + if(count == 0) return; + LLFolderViewItem* item = NULL; + selected_items_t::iterator item_it; + for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + { + item = *item_it; + if (item && item->isRemovable()) + { + items.push_back(item); + } + else + { + llinfos << "Cannot delete " << item->getName() << llendl; + return; + } + } + + // iterate through the new container. + count = items.size(); + LLUUID new_selection_id; + if(count == 1) + { + LLFolderViewItem* item_to_delete = items[0]; + LLFolderViewFolder* parent = item_to_delete->getParentFolder(); + LLFolderViewItem* new_selection = item_to_delete->getNextOpenNode(FALSE); + if (!new_selection) + { + new_selection = item_to_delete->getPreviousOpenNode(FALSE); + } + if(parent) + { + if (item_to_delete->remove()) + { + // change selection on successful delete + if (new_selection) + { + getRoot()->setSelection(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); + } + else + { + getRoot()->setSelection(NULL, mParentPanel->hasFocus()); + } + } + } + arrangeAll(); + } + else if (count > 1) + { + LLDynamicArray listeners; + LLFolderViewModelItem* listener; + LLFolderViewItem* last_item = items[count - 1]; + LLFolderViewItem* new_selection = last_item->getNextOpenNode(FALSE); + while(new_selection && new_selection->isSelected()) + { + new_selection = new_selection->getNextOpenNode(FALSE); + } + if (!new_selection) + { + new_selection = last_item->getPreviousOpenNode(FALSE); + while (new_selection && (new_selection->isSelected() || isDescendantOfASelectedItem(new_selection, items))) + { + new_selection = new_selection->getPreviousOpenNode(FALSE); + } + } + if (new_selection) + { + getRoot()->setSelection(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); + } + else + { + getRoot()->setSelection(NULL, mParentPanel->hasFocus()); + } + + for(S32 i = 0; i < count; ++i) + { + listener = items[i]->getViewModelItem(); + if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) + { + listeners.put(listener); + } + } + listener = static_cast(listeners.get(0)); + if(listener) + { + listener->removeBatch(listeners); + } + } + arrangeAll(); + scrollToShowSelection(); + } +} + +// TODO RN: abstract +// open the selected item. +void LLFolderView::openSelectedItems( void ) +{ + //TODO RN: get working again + //if(getVisible() && getEnabled()) + //{ + // if (mSelectedItems.size() == 1) + // { + // mSelectedItems.front()->openItem(); + // } + // else + // { + // LLMultiPreview* multi_previewp = new LLMultiPreview(); + // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); + + // selected_items_t::iterator item_it; + // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + // { + // // IT_{OBJECT,ATTACHMENT} creates LLProperties + // // floaters; others create LLPreviews. Put + // // each one in the right type of container. + // LLFolderViewModelItemInventory* listener = static_cast((*item_it)->getViewModelItem()); + // bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); + // if (is_prop) + // LLFloater::setFloaterHost(multi_propertiesp); + // else + // LLFloater::setFloaterHost(multi_previewp); + // listener->openItem(); + // } + + // LLFloater::setFloaterHost(NULL); + // // *NOTE: LLMulti* will safely auto-delete when open'd + // // without any children. + // multi_previewp->openFloater(LLSD()); + // multi_propertiesp->openFloater(LLSD()); + // } + //} +} + +void LLFolderView::propertiesSelectedItems( void ) +{ + //TODO RN: get working again + //if(getVisible() && getEnabled()) + //{ + // if (mSelectedItems.size() == 1) + // { + // LLFolderViewItem* folder_item = mSelectedItems.front(); + // if(!folder_item) return; + // folder_item->getViewModelItem()->showProperties(); + // } + // else + // { + // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); + + // LLFloater::setFloaterHost(multi_propertiesp); + + // selected_items_t::iterator item_it; + // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + // { + // (*item_it)->getViewModelItem()->showProperties(); + // } + + // LLFloater::setFloaterHost(NULL); + // multi_propertiesp->openFloater(LLSD()); + // } + //} +} + + +void LLFolderView::autoOpenItem( LLFolderViewFolder* item ) +{ + if ((mAutoOpenItems.check() == item) || + (mAutoOpenItems.getDepth() >= (U32)AUTO_OPEN_STACK_DEPTH) || + item->isOpen()) + { + return; + } + + // close auto-opened folders + LLFolderViewFolder* close_item = mAutoOpenItems.check(); + while (close_item && close_item != item->getParentFolder()) + { + mAutoOpenItems.pop(); + close_item->setOpenArrangeRecursively(FALSE); + close_item = mAutoOpenItems.check(); + } + + item->requestArrange(); + + mAutoOpenItems.push(item); + + item->setOpen(TRUE); + LLRect content_rect = mScrollContainer->getContentWindowRect(); + LLRect constraint_rect(0,content_rect.getHeight(), content_rect.getWidth(), 0); + scrollToShowItem(item, constraint_rect); +} + +void LLFolderView::closeAutoOpenedFolders() +{ + while (mAutoOpenItems.check()) + { + LLFolderViewFolder* close_item = mAutoOpenItems.pop(); + close_item->setOpen(FALSE); + } + + if (mAutoOpenCandidate) + { + mAutoOpenCandidate->setAutoOpenCountdown(0.f); + } + mAutoOpenCandidate = NULL; + mAutoOpenTimer.stop(); +} + +BOOL LLFolderView::autoOpenTest(LLFolderViewFolder* folder) +{ + if (folder && mAutoOpenCandidate == folder) + { + if (mAutoOpenTimer.getStarted()) + { + if (!mAutoOpenCandidate->isOpen()) + { + mAutoOpenCandidate->setAutoOpenCountdown(clamp_rescale(mAutoOpenTimer.getElapsedTimeF32(), 0.f, sAutoOpenTime, 0.f, 1.f)); + } + if (mAutoOpenTimer.getElapsedTimeF32() > sAutoOpenTime) + { + autoOpenItem(folder); + mAutoOpenTimer.stop(); + return TRUE; + } + } + return FALSE; + } + + // otherwise new candidate, restart timer + if (mAutoOpenCandidate) + { + mAutoOpenCandidate->setAutoOpenCountdown(0.f); + } + mAutoOpenCandidate = folder; + mAutoOpenTimer.start(); + return FALSE; +} + +BOOL LLFolderView::canCopy() const +{ + if (!(getVisible() && getEnabled() && (mSelectedItems.size() > 0))) + { + return FALSE; + } + + for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) + { + const LLFolderViewItem* item = *selected_it; + if (!item->getViewModelItem()->isItemCopyable()) + { + return FALSE; + } + } + return TRUE; +} + +// copy selected item +void LLFolderView::copy() +{ + // *NOTE: total hack to clear the inventory clipboard + LLClipboard::instance().reset(); + S32 count = mSelectedItems.size(); + if(getVisible() && getEnabled() && (count > 0)) + { + LLFolderViewModelItem* listener = NULL; + selected_items_t::iterator item_it; + for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + { + listener = (*item_it)->getViewModelItem(); + if(listener) + { + listener->copyToClipboard(); + } + } + } + mSearchString.clear(); +} + +BOOL LLFolderView::canCut() const +{ + if (!(getVisible() && getEnabled() && (mSelectedItems.size() > 0))) + { + return FALSE; + } + + for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) + { + const LLFolderViewItem* item = *selected_it; + const LLFolderViewModelItem* listener = item->getViewModelItem(); + + if (!listener || !listener->isItemRemovable()) + { + return FALSE; + } + } + return TRUE; +} + +void LLFolderView::cut() +{ + // clear the inventory clipboard + LLClipboard::instance().reset(); + S32 count = mSelectedItems.size(); + if(getVisible() && getEnabled() && (count > 0)) + { + LLFolderViewModelItem* listener = NULL; + selected_items_t::iterator item_it; + for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + { + listener = (*item_it)->getViewModelItem(); + if(listener) + { + listener->cutToClipboard(); + listener->removeItem(); + } + } + } + mSearchString.clear(); +} + +BOOL LLFolderView::canPaste() const +{ + if (mSelectedItems.empty()) + { + return FALSE; + } + + if(getVisible() && getEnabled()) + { + for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); + item_it != mSelectedItems.end(); ++item_it) + { + // *TODO: only check folders and parent folders of items + const LLFolderViewItem* item = (*item_it); + const LLFolderViewModelItem* listener = item->getViewModelItem(); + if(!listener || !listener->isClipboardPasteable()) + { + const LLFolderViewFolder* folderp = item->getParentFolder(); + listener = folderp->getViewModelItem(); + if (!listener || !listener->isClipboardPasteable()) + { + return FALSE; + } + } + } + return TRUE; + } + return FALSE; +} + +// paste selected item +void LLFolderView::paste() +{ + if(getVisible() && getEnabled()) + { + // find set of unique folders to paste into + std::set folder_set; + + selected_items_t::iterator selected_it; + for (selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) + { + LLFolderViewItem* item = *selected_it; + LLFolderViewFolder* folder = dynamic_cast(item); + if (folder == NULL) + { + item = item->getParentFolder(); + } + folder_set.insert(folder); + } + + std::set::iterator set_iter; + for(set_iter = folder_set.begin(); set_iter != folder_set.end(); ++set_iter) + { + LLFolderViewModelItem* listener = (*set_iter)->getViewModelItem(); + if(listener && listener->isClipboardPasteable()) + { + listener->pasteFromClipboard(); + } + } + } + mSearchString.clear(); +} + +// public rename functionality - can only start the process +void LLFolderView::startRenamingSelectedItem( void ) +{ + // make sure selection is visible + scrollToShowSelection(); + + S32 count = mSelectedItems.size(); + LLFolderViewItem* item = NULL; + if(count > 0) + { + item = mSelectedItems.front(); + } + if(getVisible() && getEnabled() && (count == 1) && item && item->getViewModelItem() && + item->getViewModelItem()->isItemRenameable()) + { + mRenameItem = item; + + updateRenamerPosition(); + + + mRenamer->setText(item->getName()); + mRenamer->selectAll(); + mRenamer->setVisible( TRUE ); + // set focus will fail unless item is visible + mRenamer->setFocus( TRUE ); + mRenamer->setTopLostCallback(boost::bind(&LLFolderView::onRenamerLost, this)); + LLUI::addPopup(mRenamer); + } +} + +BOOL LLFolderView::handleKeyHere( KEY key, MASK mask ) +{ + BOOL handled = FALSE; + + // SL-51858: Key presses are not being passed to the Popup menu. + // A proper fix is non-trivial so instead just close the menu. + LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); + if (menu && menu->isOpen()) + { + LLMenuGL::sMenuContainer->hideMenus(); + } + + LLView *item = NULL; + if (getChildCount() > 0) + { + item = *(getChildList()->begin()); + } + + switch( key ) + { + case KEY_F2: + mSearchString.clear(); + startRenamingSelectedItem(); + handled = TRUE; + break; + + case KEY_RETURN: + if (mask == MASK_NONE) + { + if( mRenameItem && mRenamer->getVisible() ) + { + finishRenamingItem(); + mSearchString.clear(); + handled = TRUE; + } + else + { + LLFolderView::openSelectedItems(); + handled = TRUE; + } + } + break; + + case KEY_ESCAPE: + if( mRenameItem && mRenamer->getVisible() ) + { + closeRenamer(); + handled = TRUE; + } + mSearchString.clear(); + break; + + case KEY_PAGE_UP: + mSearchString.clear(); + mScrollContainer->pageUp(30); + handled = TRUE; + break; + + case KEY_PAGE_DOWN: + mSearchString.clear(); + mScrollContainer->pageDown(30); + handled = TRUE; + break; + + case KEY_HOME: + mSearchString.clear(); + mScrollContainer->goToTop(); + handled = TRUE; + break; + + case KEY_END: + mSearchString.clear(); + mScrollContainer->goToBottom(); + break; + + case KEY_DOWN: + if((mSelectedItems.size() > 0) && mScrollContainer) + { + LLFolderViewItem* last_selected = getCurSelectedItem(); + + if (!mKeyboardSelection) + { + setSelection(last_selected, FALSE, TRUE); + mKeyboardSelection = TRUE; + } + + LLFolderViewItem* next = NULL; + if (mask & MASK_SHIFT) + { + // don't shift select down to children of folders (they are implicitly selected through parent) + next = last_selected->getNextOpenNode(FALSE); + if (next) + { + if (next->isSelected()) + { + // shrink selection + getRoot()->changeSelection(last_selected, FALSE); + } + else if (last_selected->getParentFolder() == next->getParentFolder()) + { + // grow selection + getRoot()->changeSelection(next, TRUE); + } + } + } + else + { + next = last_selected->getNextOpenNode(); + if( next ) + { + if (next == last_selected) + { + //special case for LLAccordionCtrl + if(notifyParent(LLSD().with("action","select_next")) > 0 )//message was processed + { + clearSelection(); + return TRUE; + } + return FALSE; + } + setSelection( next, FALSE, TRUE ); + } + else + { + //special case for LLAccordionCtrl + if(notifyParent(LLSD().with("action","select_next")) > 0 )//message was processed + { + clearSelection(); + return TRUE; + } + return FALSE; + } + } + scrollToShowSelection(); + mSearchString.clear(); + handled = TRUE; + } + break; + + case KEY_UP: + if((mSelectedItems.size() > 0) && mScrollContainer) + { + LLFolderViewItem* last_selected = mSelectedItems.back(); + + if (!mKeyboardSelection) + { + setSelection(last_selected, FALSE, TRUE); + mKeyboardSelection = TRUE; + } + + LLFolderViewItem* prev = NULL; + if (mask & MASK_SHIFT) + { + // don't shift select down to children of folders (they are implicitly selected through parent) + prev = last_selected->getPreviousOpenNode(FALSE); + if (prev) + { + if (prev->isSelected()) + { + // shrink selection + getRoot()->changeSelection(last_selected, FALSE); + } + else if (last_selected->getParentFolder() == prev->getParentFolder()) + { + // grow selection + getRoot()->changeSelection(prev, TRUE); + } + } + } + else + { + prev = last_selected->getPreviousOpenNode(); + if( prev ) + { + if (prev == this) + { + // If case we are in accordion tab notify parent to go to the previous accordion + if(notifyParent(LLSD().with("action","select_prev")) > 0 )//message was processed + { + clearSelection(); + return TRUE; + } + + return FALSE; + } + setSelection( prev, FALSE, TRUE ); + } + } + scrollToShowSelection(); + mSearchString.clear(); + + handled = TRUE; + } + break; + + case KEY_RIGHT: + if(mSelectedItems.size()) + { + LLFolderViewItem* last_selected = getCurSelectedItem(); + last_selected->setOpen( TRUE ); + mSearchString.clear(); + handled = TRUE; + } + break; + + case KEY_LEFT: + if(mSelectedItems.size()) + { + LLFolderViewItem* last_selected = getCurSelectedItem(); + LLFolderViewItem* parent_folder = last_selected->getParentFolder(); + if (!last_selected->isOpen() && parent_folder && parent_folder->getParentFolder()) + { + setSelection(parent_folder, FALSE, TRUE); + } + else + { + last_selected->setOpen( FALSE ); + } + mSearchString.clear(); + scrollToShowSelection(); + handled = TRUE; + } + break; + } + + if (!handled && mParentPanel->hasFocus()) + { + if (key == KEY_BACKSPACE) + { + mSearchTimer.reset(); + if (mSearchString.size()) + { + mSearchString.erase(mSearchString.size() - 1, 1); + } + search(getCurSelectedItem(), mSearchString, FALSE); + handled = TRUE; + } + } + + return handled; +} + + +BOOL LLFolderView::handleUnicodeCharHere(llwchar uni_char) +{ + if ((uni_char < 0x20) || (uni_char == 0x7F)) // Control character or DEL + { + return FALSE; + } + + if (uni_char > 0x7f) + { + llwarns << "LLFolderView::handleUnicodeCharHere - Don't handle non-ascii yet, aborting" << llendl; + return FALSE; + } + + BOOL handled = FALSE; + if (mParentPanel->hasFocus()) + { + // SL-51858: Key presses are not being passed to the Popup menu. + // A proper fix is non-trivial so instead just close the menu. + LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); + if (menu && menu->isOpen()) + { + LLMenuGL::sMenuContainer->hideMenus(); + } + + //do text search + if (mSearchTimer.getElapsedTimeF32() > LLUI::sSettingGroups["config"]->getF32("TypeAheadTimeout")) + { + mSearchString.clear(); + } + mSearchTimer.reset(); + if (mSearchString.size() < 128) + { + mSearchString += uni_char; + } + search(getCurSelectedItem(), mSearchString, FALSE); + + handled = TRUE; + } + + return handled; +} + + +BOOL LLFolderView::canDoDelete() const +{ + if (mSelectedItems.size() == 0) return FALSE; + + for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + { + if (!(*item_it)->getViewModelItem()->isItemRemovable()) + { + return FALSE; + } + } + return TRUE; +} + +void LLFolderView::doDelete() +{ + if(mSelectedItems.size() > 0) + { + removeSelectedItems(); + } +} + + +BOOL LLFolderView::handleMouseDown( S32 x, S32 y, MASK mask ) +{ + mKeyboardSelection = FALSE; + mSearchString.clear(); + + mParentPanel->setFocus(TRUE); + + LLEditMenuHandler::gEditMenuHandler = this; + + return LLView::handleMouseDown( x, y, mask ); +} + +BOOL LLFolderView::search(LLFolderViewItem* first_item, const std::string &search_string, BOOL backward) +{ + // get first selected item + LLFolderViewItem* search_item = first_item; + + // make sure search string is upper case + std::string upper_case_string = search_string; + LLStringUtil::toUpper(upper_case_string); + + // if nothing selected, select first item in folder + if (!search_item) + { + // start from first item + search_item = getNextFromChild(NULL); + } + + // search over all open nodes for first substring match (with wrapping) + BOOL found = FALSE; + LLFolderViewItem* original_search_item = search_item; + do + { + // wrap at end + if (!search_item) + { + if (backward) + { + search_item = getPreviousFromChild(NULL); + } + else + { + search_item = getNextFromChild(NULL); + } + if (!search_item || search_item == original_search_item) + { + break; + } + } + + const std::string current_item_label(search_item->getViewModelItem()->getSearchableName()); + S32 search_string_length = llmin(upper_case_string.size(), current_item_label.size()); + if (!current_item_label.compare(0, search_string_length, upper_case_string)) + { + found = TRUE; + break; + } + if (backward) + { + search_item = search_item->getPreviousOpenNode(); + } + else + { + search_item = search_item->getNextOpenNode(); + } + + } while(search_item != original_search_item); + + + if (found) + { + setSelection(search_item, FALSE, TRUE); + scrollToShowSelection(); + } + + return found; +} + +BOOL LLFolderView::handleDoubleClick( S32 x, S32 y, MASK mask ) +{ + // skip LLFolderViewFolder::handleDoubleClick() + return LLView::handleDoubleClick( x, y, mask ); +} + +BOOL LLFolderView::handleRightMouseDown( S32 x, S32 y, MASK mask ) +{ + // all user operations move keyboard focus to inventory + // this way, we know when to stop auto-updating a search + mParentPanel->setFocus(TRUE); + + BOOL handled = childrenHandleRightMouseDown(x, y, mask) != NULL; + S32 count = mSelectedItems.size(); + LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); + if ( handled + && ( count > 0 && (hasVisibleChildren()) ) // show menu only if selected items are visible + && menu ) + { + if (mCallbackRegistrar) + mCallbackRegistrar->pushScope(); + + updateMenuOptions(menu); + + menu->updateParent(LLMenuGL::sMenuContainer); + LLMenuGL::showPopup(this, menu, x, y); + if (mCallbackRegistrar) + mCallbackRegistrar->popScope(); + } + else + { + if (menu && menu->getVisible()) + { + menu->setVisible(FALSE); + } + setSelection(NULL, FALSE, TRUE); + } + return handled; +} + +// Add "--no options--" if the menu is completely blank. +BOOL LLFolderView::addNoOptions(LLMenuGL* menu) const +{ + const std::string nooptions_str = "--no options--"; + LLView *nooptions_item = NULL; + + const LLView::child_list_t *list = menu->getChildList(); + for (LLView::child_list_t::const_iterator itor = list->begin(); + itor != list->end(); + ++itor) + { + LLView *menu_item = (*itor); + if (menu_item->getVisible()) + { + return FALSE; + } + std::string name = menu_item->getName(); + if (menu_item->getName() == nooptions_str) + { + nooptions_item = menu_item; + } + } + if (nooptions_item) + { + nooptions_item->setVisible(TRUE); + nooptions_item->setEnabled(FALSE); + return TRUE; + } + return FALSE; +} + +BOOL LLFolderView::handleHover( S32 x, S32 y, MASK mask ) +{ + return LLView::handleHover( x, y, mask ); +} + +BOOL LLFolderView::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg) +{ + mDragAndDropThisFrame = TRUE; + // have children handle it first + BOOL handled = LLView::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, + accept, tooltip_msg); + + // when drop is not handled by child, it should be handled + // by the folder which is the hierarchy root. + if (!handled) + { + handled = LLFolderViewFolder::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg); + } + + return handled; +} + +void LLFolderView::deleteAllChildren() +{ + closeRenamer(); + if (mPopupMenuHandle.get()) mPopupMenuHandle.get()->die(); + mPopupMenuHandle = LLHandle(); + mScrollContainer = NULL; + mRenameItem = NULL; + mRenamer = NULL; + mStatusTextBox = NULL; + + clearSelection(); + LLView::deleteAllChildren(); +} + +void LLFolderView::scrollToShowSelection() +{ + if ( mSelectedItems.size() ) + { + mNeedsScroll = TRUE; + } +} + +// If the parent is scroll container, scroll it to make the selection +// is maximally visible. +void LLFolderView::scrollToShowItem(LLFolderViewItem* item, const LLRect& constraint_rect) +{ + if (!mScrollContainer) return; + + // don't scroll to items when mouse is being used to scroll/drag and drop + if (gFocusMgr.childHasMouseCapture(mScrollContainer)) + { + mNeedsScroll = FALSE; + return; + } + + // if item exists and is in visible portion of parent folder... + if(item) + { + LLRect local_rect = item->getLocalRect(); + LLRect item_scrolled_rect; // item position relative to display area of scroller + LLRect visible_doc_rect = mScrollContainer->getVisibleContentRect(); + + S32 icon_height = mIcon.isNull() ? 0 : mIcon->getHeight(); + S32 label_height = getLabelFontForStyle(mLabelStyle)->getLineHeight(); + // when navigating with keyboard, only move top of opened folder on screen, otherwise show whole folder + S32 max_height_to_show = item->isOpen() && mScrollContainer->hasFocus() ? (llmax( icon_height, label_height ) + ICON_PAD) : local_rect.getHeight(); + + // get portion of item that we want to see... + LLRect item_local_rect = LLRect(item->getIndentation(), + local_rect.getHeight(), + llmin(MIN_ITEM_WIDTH_VISIBLE, local_rect.getWidth()), + llmax(0, local_rect.getHeight() - max_height_to_show)); + + LLRect item_doc_rect; + + item->localRectToOtherView(item_local_rect, &item_doc_rect, this); + + mScrollContainer->scrollToShowRect( item_doc_rect, constraint_rect ); + + } +} + +LLRect LLFolderView::getVisibleRect() +{ + S32 visible_height = mScrollContainer->getRect().getHeight(); + S32 visible_width = mScrollContainer->getRect().getWidth(); + LLRect visible_rect; + visible_rect.setLeftTopAndSize(-getRect().mLeft, visible_height - getRect().mBottom, visible_width, visible_height); + return visible_rect; +} + +BOOL LLFolderView::getShowSelectionContext() +{ + if (mShowSelectionContext) + { + return TRUE; + } + LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); + if (menu && menu->getVisible()) + { + return TRUE; + } + return FALSE; +} + +void LLFolderView::setShowSingleSelection(BOOL show) +{ + if (show != mShowSingleSelection) + { + mMultiSelectionFadeTimer.reset(); + mShowSingleSelection = show; + } +} + +static LLFastTimer::DeclareTimer FTM_AUTO_SELECT("Open and Select"); +static LLFastTimer::DeclareTimer FTM_INVENTORY("Inventory"); + +// Main idle routine +void LLFolderView::update() +{ + // If this is associated with the user's inventory, don't do anything + // until that inventory is loaded up. + LLFastTimer t2(FTM_INVENTORY); + + if (getFolderViewModel()->getFilter()->isModified() && getFolderViewModel()->getFilter()->isNotDefault()) + { + mNeedsAutoSelect = TRUE; + } + getFolderViewModel()->getFilter()->clearModified(); + + // filter to determine visibility before arranging + filter(*(getFolderViewModel()->getFilter())); + + // automatically show matching items, and select first one if we had a selection + if (mNeedsAutoSelect) + { + LLFastTimer t3(FTM_AUTO_SELECT); + // select new item only if a filtered item not currently selected + LLFolderViewItem* selected_itemp = mSelectedItems.empty() ? NULL : mSelectedItems.back(); + if (!mAutoSelectOverride && (!selected_itemp || !selected_itemp->getViewModelItem()->potentiallyVisible())) + { + // these are named variables to get around gcc not binding non-const references to rvalues + // and functor application is inherently non-const to allow for stateful functors + LLSelectFirstFilteredItem functor; + applyFunctorRecursively(functor); + } + + // Open filtered folders for folder views with mAutoSelectOverride=TRUE. + // Used by LLPlacesFolderView. + if (getFolderViewModel()->getFilter()->showAllResults()) + { + // these are named variables to get around gcc not binding non-const references to rvalues + // and functor application is inherently non-const to allow for stateful functors + LLOpenFilteredFolders functor; + applyFunctorRecursively(functor); + } + + scrollToShowSelection(); + } + + BOOL filter_finished = getViewModelItem()->passedFilter() + && mViewModel->contentsReady(); + if (filter_finished + || gFocusMgr.childHasKeyboardFocus(getParent()) // assume we are inside a scroll container + || gFocusMgr.childHasMouseCapture(getParent())) + { + // finishing the filter process, giving focus to the folder view, or dragging the scrollbar all stop the auto select process + mNeedsAutoSelect = FALSE; + } + + + // during filtering process, try to pin selected item's location on screen + // this will happen when searching your inventory and when new items arrive + if (!filter_finished) + { + // calculate rectangle to pin item to at start of animated rearrange + if (!mPinningSelectedItem && !mSelectedItems.empty()) + { + // lets pin it! + mPinningSelectedItem = TRUE; + + LLRect visible_content_rect = mScrollContainer->getVisibleContentRect(); + LLFolderViewItem* selected_item = mSelectedItems.back(); + + LLRect item_rect; + selected_item->localRectToOtherView(selected_item->getLocalRect(), &item_rect, this); + // if item is visible in scrolled region + if (visible_content_rect.overlaps(item_rect)) + { + // then attempt to keep it in same place on screen + mScrollConstraintRect = item_rect; + mScrollConstraintRect.translate(-visible_content_rect.mLeft, -visible_content_rect.mBottom); + } + else + { + // otherwise we just want it onscreen somewhere + LLRect content_rect = mScrollContainer->getContentWindowRect(); + mScrollConstraintRect.setOriginAndSize(0, 0, content_rect.getWidth(), content_rect.getHeight()); + } + } + } + else + { + // stop pinning selected item after folders stop rearranging + if (!needsArrange()) + { + mPinningSelectedItem = FALSE; + } + } + + LLRect constraint_rect; + if (mPinningSelectedItem) + { + // use last known constraint rect for pinned item + constraint_rect = mScrollConstraintRect; + } + else + { + // during normal use (page up/page down, etc), just try to fit item on screen + LLRect content_rect = mScrollContainer->getContentWindowRect(); + constraint_rect.setOriginAndSize(0, 0, content_rect.getWidth(), content_rect.getHeight()); + } + + BOOL is_visible = isInVisibleChain(); + + if ( is_visible ) + { + sanitizeSelection(); + if( needsArrange() ) + { + S32 height = 0; + S32 width = 0; + S32 total_height = arrange( &width, &height ); + notifyParent(LLSD().with("action", "size_changes").with("height", total_height)); + } + } + + if (mSelectedItems.size() && mNeedsScroll) + { + scrollToShowItem(mSelectedItems.back(), constraint_rect); + // continue scrolling until animated layout change is done + if (filter_finished + && (!needsArrange() || !is_visible)) + { + mNeedsScroll = FALSE; + } + } + + if (mSignalSelectCallback) + { + //RN: we use keyboard focus as a proxy for user-explicit actions + BOOL take_keyboard_focus = (mSignalSelectCallback == SIGNAL_KEYBOARD_FOCUS); + mSelectSignal(mSelectedItems, take_keyboard_focus); + } + mSignalSelectCallback = FALSE; +} + +void LLFolderView::dumpSelectionInformation() +{ + llinfos << "LLFolderView::dumpSelectionInformation()" << llendl; + llinfos << "****************************************" << llendl; + selected_items_t::iterator item_it; + for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) + { + llinfos << " " << (*item_it)->getName() << llendl; + } + llinfos << "****************************************" << llendl; +} + +void LLFolderView::updateRenamerPosition() +{ + if(mRenameItem) + { + // See also LLFolderViewItem::draw() + S32 x = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mRenameItem->getIndentation(); + S32 y = mRenameItem->getRect().getHeight() - mRenameItem->getItemHeight() - RENAME_HEIGHT_PAD; + mRenameItem->localPointToScreen( x, y, &x, &y ); + screenPointToLocal( x, y, &x, &y ); + mRenamer->setOrigin( x, y ); + + LLRect scroller_rect(0, 0, LLUI::getWindowSize().mV[VX], 0); + if (mScrollContainer) + { + scroller_rect = mScrollContainer->getContentWindowRect(); + } + + S32 width = llmax(llmin(mRenameItem->getRect().getWidth() - x, scroller_rect.getWidth() - x - getRect().mLeft), MINIMUM_RENAMER_WIDTH); + S32 height = mRenameItem->getItemHeight() - RENAME_HEIGHT_PAD; + mRenamer->reshape( width, height, TRUE ); + } +} + +// Update visibility and availability (i.e. enabled/disabled) of context menu items. +void LLFolderView::updateMenuOptions(LLMenuGL* menu) +{ + const LLView::child_list_t *list = menu->getChildList(); + + LLView::child_list_t::const_iterator menu_itor; + for (menu_itor = list->begin(); menu_itor != list->end(); ++menu_itor) + { + (*menu_itor)->setVisible(FALSE); + (*menu_itor)->pushVisible(TRUE); + (*menu_itor)->setEnabled(TRUE); + } + + // Successively filter out invalid options + + U32 flags = FIRST_SELECTED_ITEM; + for (selected_items_t::iterator item_itor = mSelectedItems.begin(); + item_itor != mSelectedItems.end(); + ++item_itor) + { + LLFolderViewItem* selected_item = (*item_itor); + selected_item->buildContextMenu(*menu, flags); + flags = 0x0; + } + + addNoOptions(menu); +} + +// Refresh the context menu (that is already shown). +void LLFolderView::updateMenu() +{ + LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); + if (menu && menu->getVisible()) + { + updateMenuOptions(menu); + menu->needsArrange(); // update menu height if needed + } +} + +bool LLFolderView::selectFirstItem() +{ + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();++iter) + { + LLFolderViewFolder* folder = (*iter ); + if (folder->getVisible()) + { + LLFolderViewItem* itemp = folder->getNextFromChild(0,true); + if(itemp) + setSelection(itemp,FALSE,TRUE); + return true; + } + + } + for(items_t::iterator iit = mItems.begin(); + iit != mItems.end(); ++iit) + { + LLFolderViewItem* itemp = (*iit); + if (itemp->getVisible()) + { + setSelection(itemp,FALSE,TRUE); + return true; + } + } + return false; +} +bool LLFolderView::selectLastItem() +{ + for(items_t::reverse_iterator iit = mItems.rbegin(); + iit != mItems.rend(); ++iit) + { + LLFolderViewItem* itemp = (*iit); + if (itemp->getVisible()) + { + setSelection(itemp,FALSE,TRUE); + return true; + } + } + for (folders_t::reverse_iterator iter = mFolders.rbegin(); + iter != mFolders.rend();++iter) + { + LLFolderViewFolder* folder = (*iter); + if (folder->getVisible()) + { + LLFolderViewItem* itemp = folder->getPreviousFromChild(0,true); + if(itemp) + setSelection(itemp,FALSE,TRUE); + return true; + } + } + return false; +} + + +S32 LLFolderView::notify(const LLSD& info) +{ + if(info.has("action")) + { + std::string str_action = info["action"]; + if(str_action == "select_first") + { + setFocus(true); + selectFirstItem(); + scrollToShowSelection(); + return 1; + + } + else if(str_action == "select_last") + { + setFocus(true); + selectLastItem(); + scrollToShowSelection(); + return 1; + } + } + return 0; +} + + +///---------------------------------------------------------------------------- +/// Local function definitions +///---------------------------------------------------------------------------- + +void LLFolderView::onRenamerLost() +{ + if (mRenamer && mRenamer->getVisible()) + { + mRenamer->setVisible(FALSE); + + // will commit current name (which could be same as original name) + mRenamer->setFocus(FALSE); + } + + if( mRenameItem ) + { + setSelection( mRenameItem, TRUE ); + mRenameItem = NULL; + } +} + +S32 LLFolderView::getItemHeight() +{ + if(!hasVisibleChildren()) + { + //We need to display status textbox, let's reserve some place for it + return llmax(0, mStatusTextBox->getTextPixelHeight()); + } + return 0; +} diff --git a/indra/llui/llfolderview.h b/indra/llui/llfolderview.h new file mode 100644 index 0000000000..ba37a11bbe --- /dev/null +++ b/indra/llui/llfolderview.h @@ -0,0 +1,388 @@ +/** + * @file llfolderview.h + * @brief Definition of the folder view collection of classes. + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +/** + * + * The folder view collection of classes provides an interface for + * making a 'folder view' similar to the way the a single pane file + * folder interface works. + * + */ + +#ifndef LL_LLFOLDERVIEW_H +#define LL_LLFOLDERVIEW_H + +#include "llfolderviewitem.h" // because LLFolderView is-a LLFolderViewFolder + +#include "lluictrl.h" +#include "v4color.h" +#include "stdenums.h" +#include "lldepthstack.h" +#include "lleditmenuhandler.h" +#include "llfontgl.h" +#include "llscrollcontainer.h" + +class LLFolderViewModelInterface; +class LLFolderViewFolder; +class LLFolderViewItem; +class LLFolderViewFilter; +class LLPanel; +class LLLineEditor; +class LLMenuGL; +class LLUICtrl; +class LLTextBox; + +/** + * Class LLFolderViewScrollContainer + * + * A scroll container which provides the information about the height + * of currently displayed folder view contents. + * Used for updating vertical scroll bar visibility in inventory panel. + * See LLScrollContainer::calcVisibleSize(). + */ +class LLFolderViewScrollContainer : public LLScrollContainer +{ +public: + /*virtual*/ ~LLFolderViewScrollContainer() {}; + /*virtual*/ const LLRect getScrolledViewRect() const; + +protected: + LLFolderViewScrollContainer(const LLScrollContainer::Params& p); + friend class LLUICtrlFactory; +}; + +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +// Class LLFolderView +// +// The LLFolderView represents the root level folder view object. +// It manages the screen region of the folder view. +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +class LLFolderView : public LLFolderViewFolder, public LLEditMenuHandler +{ +public: + struct Params : public LLInitParam::Block + { + Mandatory parent_panel; + Optional title; + Optional use_label_suffix, + allow_multiselect, + show_empty_message, + use_ellipses, + show_item_link_overlays; + Mandatory view_model; + + Params(); + }; + + friend class LLFolderViewScrollContainer; + + LLFolderView(const Params&); + virtual ~LLFolderView( void ); + + virtual BOOL canFocusChildren() const; + + virtual const LLFolderView* getRoot() const { return this; } + virtual LLFolderView* getRoot() { return this; } + + LLFolderViewModelInterface* getFolderViewModel() { return mViewModel; } + const LLFolderViewModelInterface* getFolderViewModel() const { return mViewModel; } + + typedef boost::signals2::signal& items, BOOL user_action)> signal_t; + void setSelectCallback(const signal_t::slot_type& cb) { mSelectSignal.connect(cb); } + void setReshapeCallback(const signal_t::slot_type& cb) { mReshapeSignal.connect(cb); } + + bool getAllowMultiSelect() { return mAllowMultiSelect; } + + // Close all folders in the view + void closeAllFolders(); + void openTopLevelFolders(); + + virtual BOOL addFolder( LLFolderViewFolder* folder); + + // Find width and height of this object and its children. Also + // makes sure that this view and its children are the right size. + virtual S32 arrange( S32* width, S32* height ); + virtual S32 getItemHeight(); + + void arrangeAll() { mArrangeGeneration++; } + S32 getArrangeGeneration() { return mArrangeGeneration; } + + // applies filters to control visibility of items + virtual void filter( LLFolderViewFilter& filter); + + // Get the last selected item + virtual LLFolderViewItem* getCurSelectedItem( void ); + + // Record the selected item and pass it down the hierarchy. + virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, + BOOL take_keyboard_focus = TRUE); + + // This method is used to toggle the selection of an item. Walks + // children, and keeps track of selected objects. + virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); + + virtual std::set getSelectionList() const; + S32 getNumSelectedItems() { return mSelectedItems.size(); } + + // Make sure if ancestor is selected, descendants are not + void sanitizeSelection(); + virtual void clearSelection(); + void addToSelectionList(LLFolderViewItem* item); + void removeFromSelectionList(LLFolderViewItem* item); + + bool startDrag(); + void setDragAndDropThisFrame() { mDragAndDropThisFrame = TRUE; } + void setDraggingOverItem(LLFolderViewItem* item) { mDraggingOverItem = item; } + LLFolderViewItem* getDraggingOverItem() { return mDraggingOverItem; } + + // Deletion functionality + void removeSelectedItems(); + + // Open the selected item + void openSelectedItems( void ); + void propertiesSelectedItems( void ); + + void autoOpenItem(LLFolderViewFolder* item); + void closeAutoOpenedFolders(); + BOOL autoOpenTest(LLFolderViewFolder* item); + BOOL isOpen() const { return TRUE; } // root folder always open + + // Copy & paste + virtual void copy(); + virtual BOOL canCopy() const; + + virtual void cut(); + virtual BOOL canCut() const; + + virtual void paste(); + virtual BOOL canPaste() const; + + virtual void doDelete(); + virtual BOOL canDoDelete() const; + + // Public rename functionality - can only start the process + void startRenamingSelectedItem( void ); + + // LLView functionality + ///*virtual*/ BOOL handleKey( KEY key, MASK mask, BOOL called_from_parent ); + /*virtual*/ BOOL handleKeyHere( KEY key, MASK mask ); + /*virtual*/ BOOL handleUnicodeCharHere(llwchar uni_char); + /*virtual*/ BOOL handleMouseDown( S32 x, S32 y, MASK mask ); + /*virtual*/ BOOL handleDoubleClick( S32 x, S32 y, MASK mask ); + /*virtual*/ BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); + /*virtual*/ BOOL handleHover( S32 x, S32 y, MASK mask ); + /*virtual*/ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg); + /*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE); + /*virtual*/ void onMouseLeave(S32 x, S32 y, MASK mask) { setShowSelectionContext(FALSE); } + virtual void draw(); + virtual void deleteAllChildren(); + + void scrollToShowSelection(); + void scrollToShowItem(LLFolderViewItem* item, const LLRect& constraint_rect); + void setScrollContainer( LLScrollContainer* parent ) { mScrollContainer = parent; } + LLRect getVisibleRect(); + + BOOL search(LLFolderViewItem* first_item, const std::string &search_string, BOOL backward); + void setShowSelectionContext(BOOL show) { mShowSelectionContext = show; } + BOOL getShowSelectionContext(); + void setShowSingleSelection(BOOL show); + BOOL getShowSingleSelection() { return mShowSingleSelection; } + F32 getSelectionFadeElapsedTime() { return mMultiSelectionFadeTimer.getElapsedTimeF32(); } + bool getUseEllipses() { return mUseEllipses; } + + void update(); // needs to be called periodically (e.g. once per frame) + + BOOL needsAutoSelect() { return mNeedsAutoSelect && !mAutoSelectOverride; } + BOOL needsAutoRename() { return mNeedsAutoRename; } + void setNeedsAutoRename(BOOL val) { mNeedsAutoRename = val; } + void setPinningSelectedItem(BOOL val) { mPinningSelectedItem = val; } + void setAutoSelectOverride(BOOL val) { mAutoSelectOverride = val; } + + bool showItemLinkOverlays() { return mShowItemLinkOverlays; } + + void setCallbackRegistrar(LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* registrar) { mCallbackRegistrar = registrar; } + + LLPanel* getParentPanel() { return mParentPanel; } + // DEBUG only + void dumpSelectionInformation(); + + virtual S32 notify(const LLSD& info) ; + + bool useLabelSuffix() { return mUseLabelSuffix; } + void updateMenu(); + +private: + void updateMenuOptions(LLMenuGL* menu); + void updateRenamerPosition(); + +protected: + LLScrollContainer* mScrollContainer; // NULL if this is not a child of a scroll container. + + void commitRename( const LLSD& data ); + void onRenamerLost(); + + void finishRenamingItem( void ); + void closeRenamer( void ); + + bool selectFirstItem(); + bool selectLastItem(); + + BOOL addNoOptions(LLMenuGL* menu) const; + + +protected: + LLHandle mPopupMenuHandle; + + typedef std::deque selected_items_t; + selected_items_t mSelectedItems; + BOOL mKeyboardSelection; + BOOL mAllowMultiSelect; + BOOL mShowEmptyMessage; + BOOL mShowFolderHierarchy; + + // Renaming variables and methods + LLFolderViewItem* mRenameItem; // The item currently being renamed + LLLineEditor* mRenamer; + + BOOL mNeedsScroll; + BOOL mPinningSelectedItem; + LLRect mScrollConstraintRect; + BOOL mNeedsAutoSelect; + BOOL mAutoSelectOverride; + BOOL mNeedsAutoRename; + bool mUseLabelSuffix; + bool mShowItemLinkOverlays; + + LLDepthStack mAutoOpenItems; + LLFolderViewFolder* mAutoOpenCandidate; + LLFrameTimer mAutoOpenTimer; + LLFrameTimer mSearchTimer; + std::string mSearchString; + BOOL mShowSelectionContext; + BOOL mShowSingleSelection; + LLFrameTimer mMultiSelectionFadeTimer; + S32 mArrangeGeneration; + + signal_t mSelectSignal; + signal_t mReshapeSignal; + S32 mSignalSelectCallback; + S32 mMinWidth; + BOOL mDragAndDropThisFrame; + + LLPanel* mParentPanel; + + LLFolderViewModelInterface* mViewModel; + + /** + * Is used to determine if we need to cut text In LLFolderViewItem to avoid horizontal scroll. + * NOTE: For now it's used only to cut LLFolderViewItem::mLabel text for Landmarks in Places Panel. + */ + bool mUseEllipses; // See EXT-719 + + /** + * Contains item under mouse pointer while dragging + */ + LLFolderViewItem* mDraggingOverItem; // See EXT-719 + + LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* mCallbackRegistrar; + +public: + static F32 sAutoOpenTime; + LLTextBox* mStatusTextBox; + +}; + + +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +// Class LLFolderViewFunctor +// +// Simple abstract base class for applying a functor to folders and +// items in a folder view hierarchy. This is suboptimal for algorithms +// that only work folders or only work on items, but I'll worry about +// that later when it's determined to be too slow. +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +class LLFolderViewFunctor +{ +public: + virtual ~LLFolderViewFunctor() {} + virtual void doFolder(LLFolderViewFolder* folder) = 0; + virtual void doItem(LLFolderViewItem* item) = 0; +}; + +class LLSelectFirstFilteredItem : public LLFolderViewFunctor +{ +public: + LLSelectFirstFilteredItem() : mItemSelected(FALSE) {} + virtual ~LLSelectFirstFilteredItem() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); + BOOL wasItemSelected() { return mItemSelected; } +protected: + BOOL mItemSelected; +}; + +class LLOpenFilteredFolders : public LLFolderViewFunctor +{ +public: + LLOpenFilteredFolders() {} + virtual ~LLOpenFilteredFolders() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); +}; + +class LLSaveFolderState : public LLFolderViewFunctor +{ +public: + LLSaveFolderState() : mApply(FALSE) {} + virtual ~LLSaveFolderState() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item) {} + void setApply(BOOL apply); + void clearOpenFolders() { mOpenFolders.clear(); } +protected: + std::set mOpenFolders; + BOOL mApply; +}; + +class LLOpenFoldersWithSelection : public LLFolderViewFunctor +{ +public: + LLOpenFoldersWithSelection() {} + virtual ~LLOpenFoldersWithSelection() {} + virtual void doFolder(LLFolderViewFolder* folder); + virtual void doItem(LLFolderViewItem* item); +}; + +// Flags for buildContextMenu() +const U32 SUPPRESS_OPEN_ITEM = 0x1; +const U32 FIRST_SELECTED_ITEM = 0x2; + +#endif // LL_LLFOLDERVIEW_H diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp new file mode 100644 index 0000000000..741fc9c324 --- /dev/null +++ b/indra/llui/llfolderviewitem.cpp @@ -0,0 +1,2032 @@ +/** +* @file llfolderviewitem.cpp +* @brief Items and folders that can appear in a hierarchical folder view +* +* $LicenseInfo:firstyear=2001&license=viewerlgpl$ +* Second Life Viewer Source Code +* Copyright (C) 2010, Linden Research, Inc. +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU Lesser General Public +* License as published by the Free Software Foundation; +* version 2.1 of the License only. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +* Lesser General Public License for more details. +* +* You should have received a copy of the GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +* +* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA +* $/LicenseInfo$ +*/ +#include "linden_common.h" +#include "llfolderviewitem.h" + +#include "llfolderview.h" +#include "llfolderviewmodel.h" +#include "llpanel.h" +#include "llcriticaldamp.h" +#include "llclipboard.h" +#include "llfocusmgr.h" // gFocusMgr +#include "lltrans.h" +#include "llwindow.h" + +///---------------------------------------------------------------------------- +/// Class LLFolderViewItem +///---------------------------------------------------------------------------- + +static LLDefaultChildRegistry::Register r("folder_view_item"); + +// statics +std::map LLFolderViewItem::sFonts; // map of styles to fonts + +// only integers can be initialized in header +const F32 LLFolderViewItem::FOLDER_CLOSE_TIME_CONSTANT = 0.02f; +const F32 LLFolderViewItem::FOLDER_OPEN_TIME_CONSTANT = 0.03f; + +const LLColor4U DEFAULT_WHITE(255, 255, 255); + + +//static +LLFontGL* LLFolderViewItem::getLabelFontForStyle(U8 style) +{ + LLFontGL* rtn = sFonts[style]; + if (!rtn) // grab label font with this style, lazily + { + LLFontDescriptor labelfontdesc("SansSerif", "Small", style); + rtn = LLFontGL::getFont(labelfontdesc); + if (!rtn) + { + rtn = LLFontGL::getFontDefault(); + } + sFonts[style] = rtn; + } + return rtn; +} + +//static +void LLFolderViewItem::initClass() +{ +} + +//static +void LLFolderViewItem::cleanupClass() +{ + sFonts.clear(); +} + + +// NOTE: Optimize this, we call it a *lot* when opening a large inventory +LLFolderViewItem::Params::Params() +: root(), + listener(), + folder_arrow_image("folder_arrow_image"), + folder_indentation("folder_indentation"), + selection_image("selection_image"), + item_height("item_height"), + item_top_pad("item_top_pad"), + creation_date() +{} + +// Default constructor +LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) +: LLView(p), + mLabelWidth(0), + mLabelWidthDirty(false), + mParentFolder( NULL ), + mIsSelected( FALSE ), + mIsCurSelection( FALSE ), + mSelectPending(FALSE), + mLabelStyle( LLFontGL::NORMAL ), + mHasVisibleChildren(FALSE), + mIndentation(0), + mItemHeight(p.item_height), + //TODO RN: create interface for string highlighting + //mStringMatchOffset(std::string::npos), + mControlLabelRotation(0.f), + mDragAndDropTarget(FALSE), + mLabel(p.name), + mRoot(p.root), + mViewModelItem(p.listener), + mIsMouseOverTitle(false) +{ + if (mViewModelItem) + { + mViewModelItem->setFolderViewItem(this); + } +} + +BOOL LLFolderViewItem::postBuild() +{ + refresh(); + return TRUE; +} + +// Destroys the object +LLFolderViewItem::~LLFolderViewItem( void ) +{ + delete mViewModelItem; + mViewModelItem = NULL; +} + +LLFolderView* LLFolderViewItem::getRoot() +{ + return mRoot; +} + +const LLFolderView* LLFolderViewItem::getRoot() const +{ + return mRoot; +} +// Returns true if this object is a child (or grandchild, etc.) of potential_ancestor. +BOOL LLFolderViewItem::isDescendantOf( const LLFolderViewFolder* potential_ancestor ) +{ + LLFolderViewItem* root = this; + while( root->mParentFolder ) + { + if( root->mParentFolder == potential_ancestor ) + { + return TRUE; + } + root = root->mParentFolder; + } + return FALSE; +} + +LLFolderViewItem* LLFolderViewItem::getNextOpenNode(BOOL include_children) +{ + if (!mParentFolder) + { + return NULL; + } + + LLFolderViewItem* itemp = mParentFolder->getNextFromChild( this, include_children ); + while(itemp && !itemp->getVisible()) + { + LLFolderViewItem* next_itemp = itemp->mParentFolder->getNextFromChild( itemp, include_children ); + if (itemp == next_itemp) + { + // hit last item + return itemp->getVisible() ? itemp : this; + } + itemp = next_itemp; + } + + return itemp; +} + +LLFolderViewItem* LLFolderViewItem::getPreviousOpenNode(BOOL include_children) +{ + if (!mParentFolder) + { + return NULL; + } + + LLFolderViewItem* itemp = mParentFolder->getPreviousFromChild( this, include_children ); + + // Skip over items that are invisible or are hidden from the UI. + while(itemp && !itemp->getVisible()) + { + LLFolderViewItem* next_itemp = itemp->mParentFolder->getPreviousFromChild( itemp, include_children ); + if (itemp == next_itemp) + { + // hit first item + return itemp->getVisible() ? itemp : this; + } + itemp = next_itemp; + } + + return itemp; +} + +BOOL LLFolderViewItem::passedFilter(S32 filter_generation) +{ + return getViewModelItem()->passedFilter(filter_generation); +} + +void LLFolderViewItem::refresh() +{ + LLFolderViewModelItem& vmi = *getViewModelItem(); + + mLabel = vmi.getDisplayName(); + + setToolTip(mLabel); + mIcon = vmi.getIcon(); + mIconOpen = vmi.getIconOpen(); + mIconOverlay = vmi.getIconOverlay(); + + if (mRoot->useLabelSuffix()) + { + mLabelStyle = vmi.getLabelStyle(); + mLabelSuffix = vmi.getLabelSuffix(); + } + + //TODO RN: make sure this logic still fires + //std::string searchable_label(mLabel); + //searchable_label.append(mLabelSuffix); + //LLStringUtil::toUpper(searchable_label); + + //if (mSearchableLabel.compare(searchable_label)) + //{ + // mSearchableLabel.assign(searchable_label); + // vmi.dirtyFilter(); + // // some part of label has changed, so overall width has potentially changed, and sort order too + // if (mParentFolder) + // { + // mParentFolder->requestSort(); + // mParentFolder->requestArrange(); + // } + //} + + mLabelWidthDirty = true; + vmi.dirtyFilter(); +} + +// Utility function for LLFolderView +void LLFolderViewItem::arrangeAndSet(BOOL set_selection, + BOOL take_keyboard_focus) +{ + LLFolderView* root = getRoot(); + if (getParentFolder()) + { + getParentFolder()->requestArrange(); + } + if(set_selection) + { + getRoot()->setSelection(this, TRUE, take_keyboard_focus); + if(root) + { + root->scrollToShowSelection(); + } + } +} + + +std::set LLFolderViewItem::getSelectionList() const +{ + std::set selection; + return selection; +} + +// addToFolder() returns TRUE if it succeeds. FALSE otherwise +BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) +{ + return folder->addItem(this); +} + + +// Finds width and height of this object and its children. Also +// makes sure that this view and its children are the right size. +S32 LLFolderViewItem::arrange( S32* width, S32* height ) +{ + const Params& p = LLUICtrlFactory::getDefaultParams(); + S32 indentation = p.folder_indentation(); + // Only indent deeper items in hierarchy + mIndentation = (getParentFolder()) + ? getParentFolder()->getIndentation() + indentation + : 0; + if (mLabelWidthDirty) + { + mLabelWidth = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + getLabelFontForStyle(mLabelStyle)->getWidth(mLabel) + getLabelFontForStyle(mLabelStyle)->getWidth(mLabelSuffix) + TEXT_PAD_RIGHT; + mLabelWidthDirty = false; + } + + *width = llmax(*width, mLabelWidth + mIndentation); + + // determine if we need to use ellipses to avoid horizontal scroll. EXT-719 + bool use_ellipses = getRoot()->getUseEllipses(); + if (use_ellipses) + { + // limit to set rect to avoid horizontal scrollbar + *width = llmin(*width, getRoot()->getRect().getWidth()); + } + *height = getItemHeight(); + return *height; +} + +S32 LLFolderViewItem::getItemHeight() +{ + return mItemHeight; +} + +// *TODO: This can be optimized a lot by simply recording that it is +// selected in the appropriate places, and assuming that set selection +// means 'deselect' for a leaf item. Do this optimization after +// multiple selection is implemented to make sure it all plays nice +// together. +BOOL LLFolderViewItem::setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus) +{ + if (selection == this && !mIsSelected) + { + selectItem(); + } + else if (mIsSelected) // Deselect everything else. + { + deselectItem(); + } + return mIsSelected; +} + +BOOL LLFolderViewItem::changeSelection(LLFolderViewItem* selection, BOOL selected) +{ + if (selection == this) + { + if (mIsSelected) + { + deselectItem(); + } + else + { + selectItem(); + } + return TRUE; + } + return FALSE; +} + +void LLFolderViewItem::deselectItem(void) +{ + mIsSelected = FALSE; +} + +void LLFolderViewItem::selectItem(void) +{ + if (mIsSelected == FALSE) + { + getViewModelItem()->selectItem(); + mIsSelected = TRUE; + } +} + +BOOL LLFolderViewItem::isMovable() +{ + return getViewModelItem()->isItemMovable(); +} + +BOOL LLFolderViewItem::isRemovable() +{ + return getViewModelItem()->isItemRemovable(); +} + +void LLFolderViewItem::destroyView() +{ + getRoot()->removeFromSelectionList(this); + + if (mParentFolder) + { + // removeView deletes me + mParentFolder->extractItem(this); + } + delete this; +} + +// Call through to the viewed object and return true if it can be +// removed. +//BOOL LLFolderViewItem::removeRecursively(BOOL single_item) +BOOL LLFolderViewItem::remove() +{ + if(!isRemovable()) + { + return FALSE; + } + return getViewModelItem()->removeItem(); +} + +// Build an appropriate context menu for the item. +void LLFolderViewItem::buildContextMenu(LLMenuGL& menu, U32 flags) +{ + getViewModelItem()->buildContextMenu(menu, flags); +} + +void LLFolderViewItem::openItem( void ) +{ + getViewModelItem()->openItem(); +} + +void LLFolderViewItem::rename(const std::string& new_name) +{ + if( !new_name.empty() ) + { + getViewModelItem()->renameItem(new_name); + + if(mParentFolder) + { + mParentFolder->requestSort(); + } + } + } + +const std::string& LLFolderViewItem::getName( void ) const +{ + return getViewModelItem()->getName(); +} + +// LLView functionality +BOOL LLFolderViewItem::handleRightMouseDown( S32 x, S32 y, MASK mask ) +{ + if(!mIsSelected) + { + getRoot()->setSelection(this, FALSE); + } + make_ui_sound("UISndClick"); + return TRUE; +} + +BOOL LLFolderViewItem::handleMouseDown( S32 x, S32 y, MASK mask ) +{ + if (LLView::childrenHandleMouseDown(x, y, mask)) + { + return TRUE; + } + + // No handler needed for focus lost since this class has no + // state that depends on it. + gFocusMgr.setMouseCapture( this ); + + if (!mIsSelected) + { + if(mask & MASK_CONTROL) + { + getRoot()->changeSelection(this, !mIsSelected); + } + else if (mask & MASK_SHIFT) + { + getParentFolder()->extendSelectionTo(this); + } + else + { + getRoot()->setSelection(this, FALSE); + } + make_ui_sound("UISndClick"); + } + else + { + mSelectPending = TRUE; + } + + mDragStartX = x; + mDragStartY = y; + return TRUE; +} + +BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) +{ + static LLCachedControl drag_and_drop_threshold(*LLUI::sSettingGroups["config"],"DragAndDropDistanceThreshold"); + + mIsMouseOverTitle = (y > (getRect().getHeight() - mItemHeight)); + + if( hasMouseCapture() && isMovable() ) + { + LLFolderView* root = getRoot(); + + if( (x - mDragStartX) * (x - mDragStartX) + (y - mDragStartY) * (y - mDragStartY) > drag_and_drop_threshold() * drag_and_drop_threshold() + && root->getCurSelectedItem() + && root->startDrag()) + { + // RN: when starting drag and drop, clear out last auto-open + root->autoOpenTest(NULL); + root->setShowSelectionContext(TRUE); + + // Release keyboard focus, so that if stuff is dropped into the + // world, pressing the delete key won't blow away the inventory + // item. + gFocusMgr.setKeyboardFocus(NULL); + + getWindow()->setCursor(UI_CURSOR_ARROW); + return TRUE; + } + else + { + getWindow()->setCursor(UI_CURSOR_NOLOCKED); + return TRUE; + } + } + else + { + getRoot()->setShowSelectionContext(FALSE); + getWindow()->setCursor(UI_CURSOR_ARROW); + // let parent handle this then... + return FALSE; + } +} + + +BOOL LLFolderViewItem::handleDoubleClick( S32 x, S32 y, MASK mask ) +{ + getViewModelItem()->openItem(); + return TRUE; +} + +BOOL LLFolderViewItem::handleMouseUp( S32 x, S32 y, MASK mask ) +{ + if (LLView::childrenHandleMouseUp(x, y, mask)) + { + return TRUE; + } + + // if mouse hasn't moved since mouse down... + if ( pointInView(x, y) && mSelectPending ) + { + //...then select + if(mask & MASK_CONTROL) + { + getRoot()->changeSelection(this, !mIsSelected); + } + else if (mask & MASK_SHIFT) + { + getParentFolder()->extendSelectionTo(this); + } + else + { + getRoot()->setSelection(this, FALSE); + } + } + + mSelectPending = FALSE; + + if( hasMouseCapture() ) + { + if (getRoot()) + { + getRoot()->setShowSelectionContext(FALSE); + } + gFocusMgr.setMouseCapture( NULL ); + } + return TRUE; +} + +void LLFolderViewItem::onMouseLeave(S32 x, S32 y, MASK mask) +{ + mIsMouseOverTitle = false; +} + +BOOL LLFolderViewItem::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg) +{ + BOOL handled = FALSE; + BOOL accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); + handled = accepted; + if (accepted) + { + mDragAndDropTarget = TRUE; + *accept = ACCEPT_YES_MULTI; + } + else + { + *accept = ACCEPT_NO; + } + if(mParentFolder && !handled) + { + // store this item to get it in LLFolderBridge::dragItemIntoFolder on drop event. + mRoot->setDraggingOverItem(this); + handled = mParentFolder->handleDragAndDropFromChild(mask,drop,cargo_type,cargo_data,accept,tooltip_msg); + mRoot->setDraggingOverItem(NULL); + } + if (handled) + { + lldebugst(LLERR_USER_INPUT) << "dragAndDrop handled by LLFolderViewItem" << llendl; + } + + return handled; +} + +void LLFolderViewItem::draw() +{ + static LLUIColor sFgColor = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); + static LLUIColor sHighlightBgColor = LLUIColorTable::instance().getColor("MenuItemHighlightBgColor", DEFAULT_WHITE); + static LLUIColor sHighlightFgColor = LLUIColorTable::instance().getColor("MenuItemHighlightFgColor", DEFAULT_WHITE); + static LLUIColor sFocusOutlineColor = LLUIColorTable::instance().getColor("InventoryFocusOutlineColor", DEFAULT_WHITE); + static LLUIColor sFilterBGColor = LLUIColorTable::instance().getColor("FilterBackgroundColor", DEFAULT_WHITE); + static LLUIColor sFilterTextColor = LLUIColorTable::instance().getColor("FilterTextColor", DEFAULT_WHITE); + static LLUIColor sSuffixColor = LLUIColorTable::instance().getColor("InventoryItemColor", DEFAULT_WHITE); + static LLUIColor sLibraryColor = LLUIColorTable::instance().getColor("InventoryItemLibraryColor", DEFAULT_WHITE); + static LLUIColor sLinkColor = LLUIColorTable::instance().getColor("InventoryItemLinkColor", DEFAULT_WHITE); + static LLUIColor sSearchStatusColor = LLUIColorTable::instance().getColor("InventorySearchStatusColor", DEFAULT_WHITE); + static LLUIColor sMouseOverColor = LLUIColorTable::instance().getColor("InventoryMouseOverColor", DEFAULT_WHITE); + + const Params& default_params = LLUICtrlFactory::getDefaultParams(); + const S32 TOP_PAD = default_params.item_top_pad; + const S32 FOCUS_LEFT = 1; + const LLFontGL* font = getLabelFontForStyle(mLabelStyle); + + getViewModelItem()->update(); + + //--------------------------------------------------------------------------------// + // Draw open folder arrow + // + if (hasVisibleChildren() || getViewModelItem()->hasChildren()) + { + LLUIImage* arrow_image = default_params.folder_arrow_image; + gl_draw_scaled_rotated_image( + mIndentation, getRect().getHeight() - ARROW_SIZE - TEXT_PAD - TOP_PAD, + ARROW_SIZE, ARROW_SIZE, mControlLabelRotation, arrow_image->getImage(), sFgColor); + } + + + //--------------------------------------------------------------------------------// + // Draw highlight for selected items + // + const BOOL show_context = (getRoot() ? getRoot()->getShowSelectionContext() : FALSE); + const BOOL filled = show_context || (getRoot() ? getRoot()->getParentPanel()->hasFocus() : FALSE); // If we have keyboard focus, draw selection filled + const S32 focus_top = getRect().getHeight(); + const S32 focus_bottom = getRect().getHeight() - mItemHeight; + const bool folder_open = (getRect().getHeight() > mItemHeight + 4); + if (mIsSelected) // always render "current" item. Only render other selected items if mShowSingleSelection is FALSE + { + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + LLColor4 bg_color = sHighlightBgColor; + if (!mIsCurSelection) + { + // do time-based fade of extra objects + F32 fade_time = (getRoot() ? getRoot()->getSelectionFadeElapsedTime() : 0.0f); + if (getRoot() && getRoot()->getShowSingleSelection()) + { + // fading out + bg_color.mV[VALPHA] = clamp_rescale(fade_time, 0.f, 0.4f, bg_color.mV[VALPHA], 0.f); + } + else + { + // fading in + bg_color.mV[VALPHA] = clamp_rescale(fade_time, 0.f, 0.4f, 0.f, bg_color.mV[VALPHA]); + } + } + gl_rect_2d(FOCUS_LEFT, + focus_top, + getRect().getWidth() - 2, + focus_bottom, + bg_color, filled); + if (mIsCurSelection) + { + gl_rect_2d(FOCUS_LEFT, + focus_top, + getRect().getWidth() - 2, + focus_bottom, + sFocusOutlineColor, FALSE); + } + if (folder_open) + { + gl_rect_2d(FOCUS_LEFT, + focus_bottom + 1, // overlap with bottom edge of above rect + getRect().getWidth() - 2, + 0, + sFocusOutlineColor, FALSE); + if (show_context) + { + gl_rect_2d(FOCUS_LEFT, + focus_bottom + 1, + getRect().getWidth() - 2, + 0, + sHighlightBgColor, TRUE); + } + } + } + else if (mIsMouseOverTitle) + { + gl_rect_2d(FOCUS_LEFT, + focus_top, + getRect().getWidth() - 2, + focus_bottom, + sMouseOverColor, FALSE); + } + + //--------------------------------------------------------------------------------// + // Draw DragNDrop highlight + // + if (mDragAndDropTarget) + { + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + gl_rect_2d(FOCUS_LEFT, + focus_top, + getRect().getWidth() - 2, + focus_bottom, + sHighlightBgColor, FALSE); + if (folder_open) + { + gl_rect_2d(FOCUS_LEFT, + focus_bottom + 1, // overlap with bottom edge of above rect + getRect().getWidth() - 2, + 0, + sHighlightBgColor, FALSE); + } + mDragAndDropTarget = FALSE; + } + + //--------------------------------------------------------------------------------// + // Draw open icon + // + const S32 icon_x = mIndentation + ARROW_SIZE + TEXT_PAD; + if (!mIconOpen.isNull() && (llabs(mControlLabelRotation) > 80)) // For open folders + { + mIconOpen->draw(icon_x, getRect().getHeight() - mIconOpen->getHeight() - TOP_PAD + 1); + } + else if (mIcon) + { + mIcon->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); + } + + if (mIconOverlay && getRoot()->showItemLinkOverlays()) + { + mIconOverlay->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); + } + + //--------------------------------------------------------------------------------// + // Exit if no label to draw + // + if (mLabel.empty()) + { + return; + } + + LLColor4 color = (mIsSelected && filled) ? sHighlightFgColor : sFgColor; + //TODO RN: implement this in terms of getColor() + //if (highlight_link) color = sLinkColor; + //if (gInventory.isObjectDescendentOf(getViewModelItem()->getUUID(), gInventory.getLibraryRootFolderID())) color = sLibraryColor; + + F32 right_x = 0; + F32 y = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; + F32 text_left = (F32)(ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mIndentation); + + //--------------------------------------------------------------------------------// + // Draw the actual label text + // + font->renderUTF8(mLabel, 0, text_left, y, color, + LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, + S32_MAX, getRect().getWidth() - (S32) text_left, &right_x, TRUE); + + //--------------------------------------------------------------------------------// + // Draw label suffix + // + if (!mLabelSuffix.empty()) + { + font->renderUTF8( mLabelSuffix, 0, right_x, y, sSuffixColor, + LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, + S32_MAX, S32_MAX, &right_x, FALSE ); + } + + //--------------------------------------------------------------------------------// + // Highlight string match + // + //TODO RN: expose interface for highlighting + //if (mStringMatchOffset != std::string::npos) + //{ + // // don't draw backgrounds for zero-length strings + // S32 filter_string_length = getRoot()->getFilterSubString().size(); + // if (filter_string_length > 0) + // { + // std::string combined_string = mLabel + mLabelSuffix; + // S32 left = llround(text_left) + font->getWidth(combined_string, 0, mStringMatchOffset) - 1; + // S32 right = left + font->getWidth(combined_string, mStringMatchOffset, filter_string_length) + 2; + // S32 bottom = llfloor(getRect().getHeight() - font->getLineHeight() - 3 - TOP_PAD); + // S32 top = getRect().getHeight() - TOP_PAD; + // + // LLUIImage* box_image = default_params.selection_image; + // LLRect box_rect(left, top, right, bottom); + // box_image->draw(box_rect, sFilterBGColor); + // F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mStringMatchOffset); + // F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; + // font->renderUTF8( combined_string, mStringMatchOffset, match_string_left, yy, + // sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, + // filter_string_length, S32_MAX, &right_x, FALSE ); + // } + //} +} + +const LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) const + { + return getRoot()->getFolderViewModel(); +} + +LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) + { + return getRoot()->getFolderViewModel(); +} + + +///---------------------------------------------------------------------------- +/// Class LLFolderViewFolder +///---------------------------------------------------------------------------- + +LLFolderViewFolder::LLFolderViewFolder( const LLFolderViewItem::Params& p ): + LLFolderViewItem( p ), + mIsOpen(FALSE), + mExpanderHighlighted(FALSE), + mCurHeight(0.f), + mTargetHeight(0.f), + mAutoOpenCountdown(0.f), + mLastArrangeGeneration( -1 ), + mLastCalculatedWidth(0) +{ +} + +// Destroys the object +LLFolderViewFolder::~LLFolderViewFolder( void ) +{ + // The LLView base class takes care of object destruction. make sure that we + // don't have mouse or keyboard focus + gFocusMgr.releaseFocusIfNeeded( this ); // calls onCommit() +} + +// addToFolder() returns TRUE if it succeeds. FALSE otherwise +BOOL LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder) +{ + return folder->addFolder(this); +} + +static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); + +// Finds width and height of this object and its children. Also +// makes sure that this view and its children are the right size. +S32 LLFolderViewFolder::arrange( S32* width, S32* height ) +{ + // sort before laying out contents + getRoot()->getFolderViewModel()->sort(this); + + LLFastTimer t2(FTM_ARRANGE); + + // evaluate mHasVisibleChildren + mHasVisibleChildren = false; + if (getViewModelItem()->descendantsPassedFilter()) + { + // We have to verify that there's at least one child that's not filtered out + bool found = false; + // Try the items first + for (items_t::iterator iit = mItems.begin(); iit != mItems.end(); ++iit) + { + LLFolderViewItem* itemp = (*iit); + found = itemp->passedFilter(); + if (found) + break; + } + if (!found) + { + // If no item found, try the folders + for (folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) + { + LLFolderViewFolder* folderp = (*fit); + found = folderp->passedFilter(); + if (found) + break; + } + } + + mHasVisibleChildren = found; + } + + // calculate height as a single item (without any children), and reshapes rectangle to match + LLFolderViewItem::arrange( width, height ); + + // clamp existing animated height so as to never get smaller than a single item + mCurHeight = llmax((F32)*height, mCurHeight); + + // initialize running height value as height of single item in case we have no children + F32 running_height = (F32)*height; + F32 target_height = (F32)*height; + + // are my children visible? + if (needsArrange()) + { + // set last arrange generation first, in case children are animating + // and need to be arranged again + mLastArrangeGeneration = getRoot()->getArrangeGeneration(); + if (isOpen()) + { + // Add sizes of children + S32 parent_item_height = getRect().getHeight(); + + for(folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) + { + LLFolderViewFolder* folderp = (*fit); + folderp->setVisible(folderp->passedFilter()); // passed filter or has descendants that passed filter + + if (folderp->getVisible()) + { + S32 child_width = *width; + S32 child_height = 0; + S32 child_top = parent_item_height - llround(running_height); + + target_height += folderp->arrange( &child_width, &child_height ); + + running_height += (F32)child_height; + *width = llmax(*width, child_width); + folderp->setOrigin( 0, child_top - folderp->getRect().getHeight() ); + } + } + for(items_t::iterator iit = mItems.begin(); + iit != mItems.end(); ++iit) + { + LLFolderViewItem* itemp = (*iit); + itemp->setVisible(itemp->passedFilter()); + + if (itemp->getVisible()) + { + S32 child_width = *width; + S32 child_height = 0; + S32 child_top = parent_item_height - llround(running_height); + + target_height += itemp->arrange( &child_width, &child_height ); + // don't change width, as this item is as wide as its parent folder by construction + itemp->reshape( itemp->getRect().getWidth(), child_height); + + running_height += (F32)child_height; + *width = llmax(*width, child_width); + itemp->setOrigin( 0, child_top - itemp->getRect().getHeight() ); + } + } + } + + mTargetHeight = target_height; + // cache this width so next time we can just return it + mLastCalculatedWidth = *width; + } + else + { + // just use existing width + *width = mLastCalculatedWidth; + } + + // animate current height towards target height + if (llabs(mCurHeight - mTargetHeight) > 1.f) + { + mCurHeight = lerp(mCurHeight, mTargetHeight, LLCriticalDamp::getInterpolant(isOpen() ? FOLDER_OPEN_TIME_CONSTANT : FOLDER_CLOSE_TIME_CONSTANT)); + + requestArrange(); + + // hide child elements that fall out of current animated height + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + // number of pixels that bottom of folder label is from top of parent folder + if (getRect().getHeight() - (*fit)->getRect().mTop + (*fit)->getItemHeight() + > llround(mCurHeight) + MAX_FOLDER_ITEM_OVERLAP) + { + // hide if beyond current folder height + (*fit)->setVisible(FALSE); + } + } + + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + // number of pixels that bottom of item label is from top of parent folder + if (getRect().getHeight() - (*iit)->getRect().mBottom + > llround(mCurHeight) + MAX_FOLDER_ITEM_OVERLAP) + { + (*iit)->setVisible(FALSE); + } + } + } + else + { + mCurHeight = mTargetHeight; + } + + // don't change width as this item is already as wide as its parent folder + reshape(getRect().getWidth(),llround(mCurHeight)); + + // pass current height value back to parent + *height = llround(mCurHeight); + + return llround(mTargetHeight); +} + +BOOL LLFolderViewFolder::needsArrange() +{ + return mLastArrangeGeneration < getRoot()->getArrangeGeneration(); +} + +void LLFolderViewFolder::requestSort() +{ + getViewModelItem()->requestSort(); +} + +//TODO RN: get height resetting working +//void LLFolderViewFolder::setPassedFilter(BOOL passed, BOOL passed_folder, S32 filter_generation) +//{ +// // if this folder is now filtered, but wasn't before +// // (it just passed) +// if (passed && !passedFilter(filter_generation)) +// { +// // reset current height, because last time we drew it +// // it might have had more visible items than now +// mCurHeight = 0.f; +// } +// +// LLFolderViewItem::setPassedFilter(passed, passed_folder, filter_generation); +//} + + +// Passes selection information on to children and record selection +// information if necessary. +BOOL LLFolderViewFolder::setSelection(LLFolderViewItem* selection, BOOL openitem, + BOOL take_keyboard_focus) +{ + BOOL rv = FALSE; + if (selection == this) + { + if (!isSelected()) + { + selectItem(); + } + rv = TRUE; + } + else + { + if (isSelected()) + { + deselectItem(); + } + rv = FALSE; + } + BOOL child_selected = FALSE; + + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + if((*fit)->setSelection(selection, openitem, take_keyboard_focus)) + { + rv = TRUE; + child_selected = TRUE; + } + } + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + if((*iit)->setSelection(selection, openitem, take_keyboard_focus)) + { + rv = TRUE; + child_selected = TRUE; + } + } + if(openitem && child_selected) + { + setOpenArrangeRecursively(TRUE); + } + return rv; +} + +// This method is used to change the selection of an item. +// Recursively traverse all children; if 'selection' is 'this' then change +// the select status if necessary. +// Returns TRUE if the selection state of this folder, or of a child, was changed. +BOOL LLFolderViewFolder::changeSelection(LLFolderViewItem* selection, BOOL selected) +{ + BOOL rv = FALSE; + if(selection == this) + { + if (isSelected() != selected) + { + rv = TRUE; + if (selected) + { + selectItem(); + } + else + { + deselectItem(); + } + } + } + + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + if((*fit)->changeSelection(selection, selected)) + { + rv = TRUE; + } + } + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + if((*iit)->changeSelection(selection, selected)) + { + rv = TRUE; + } + } + return rv; +} + +LLFolderViewFolder* LLFolderViewFolder::getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse) +{ + if (!item_a->getParentFolder() || !item_b->getParentFolder()) return NULL; + + std::deque item_a_ancestors; + + LLFolderViewFolder* parent = item_a->getParentFolder(); + while(parent) + { + item_a_ancestors.push_back(parent); + parent = parent->getParentFolder(); + } + + std::deque item_b_ancestors; + + parent = item_b->getParentFolder(); + while(parent) + { + item_b_ancestors.push_back(parent); + parent = parent->getParentFolder(); + } + + LLFolderViewFolder* common_ancestor = item_a->getRoot(); + + while(item_a_ancestors.size() > item_b_ancestors.size()) + { + item_a = item_a_ancestors.front(); + item_a_ancestors.pop_front(); + } + + while(item_b_ancestors.size() > item_a_ancestors.size()) + { + item_b = item_b_ancestors.front(); + item_b_ancestors.pop_front(); + } + + while(item_a_ancestors.size()) + { + common_ancestor = item_a_ancestors.front(); + + if (item_a_ancestors.front() == item_b_ancestors.front()) + { + // which came first, sibling a or sibling b? + for (folders_t::iterator it = common_ancestor->mFolders.begin(), end_it = common_ancestor->mFolders.end(); + it != end_it; + ++it) + { + LLFolderViewItem* item = *it; + + if (item == item_a) + { + reverse = false; + return common_ancestor; + } + if (item == item_b) + { + reverse = true; + return common_ancestor; + } + } + + for (items_t::iterator it = common_ancestor->mItems.begin(), end_it = common_ancestor->mItems.end(); + it != end_it; + ++it) + { + LLFolderViewItem* item = *it; + + if (item == item_a) + { + reverse = false; + return common_ancestor; + } + if (item == item_b) + { + reverse = true; + return common_ancestor; + } + } + break; + } + + item_a = item_a_ancestors.front(); + item_a_ancestors.pop_front(); + item_b = item_b_ancestors.front(); + item_b_ancestors.pop_front(); + } + + return NULL; +} + +void LLFolderViewFolder::gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items) +{ + bool selecting = start == NULL; + if (reverse) + { + for (items_t::reverse_iterator it = mItems.rbegin(), end_it = mItems.rend(); + it != end_it; + ++it) + { + if (*it == end) + { + return; + } + if (selecting) + { + items.push_back(*it); + } + + if (*it == start) + { + selecting = true; + } + } + for (folders_t::reverse_iterator it = mFolders.rbegin(), end_it = mFolders.rend(); + it != end_it; + ++it) + { + if (*it == end) + { + return; + } + + if (selecting) + { + items.push_back(*it); + } + + if (*it == start) + { + selecting = true; + } + } + } + else + { + for (folders_t::iterator it = mFolders.begin(), end_it = mFolders.end(); + it != end_it; + ++it) + { + if (*it == end) + { + return; + } + + if (selecting) + { + items.push_back(*it); + } + + if (*it == start) + { + selecting = true; + } + } + for (items_t::iterator it = mItems.begin(), end_it = mItems.end(); + it != end_it; + ++it) + { + if (*it == end) + { + return; + } + + if (selecting) + { + items.push_back(*it); + } + + if (*it == start) + { + selecting = true; + } + } + } +} + +void LLFolderViewFolder::extendSelectionTo(LLFolderViewItem* new_selection) +{ + if (getRoot()->getAllowMultiSelect() == FALSE) return; + + LLFolderViewItem* cur_selected_item = getRoot()->getCurSelectedItem(); + if (cur_selected_item == NULL) + { + cur_selected_item = new_selection; + } + + + bool reverse = false; + LLFolderViewFolder* common_ancestor = getCommonAncestor(cur_selected_item, new_selection, reverse); + if (!common_ancestor) return; + + LLFolderViewItem* last_selected_item_from_cur = cur_selected_item; + LLFolderViewFolder* cur_folder = cur_selected_item->getParentFolder(); + + std::vector items_to_select_forward; + + while(cur_folder != common_ancestor) + { + cur_folder->gatherChildRangeExclusive(last_selected_item_from_cur, NULL, reverse, items_to_select_forward); + + last_selected_item_from_cur = cur_folder; + cur_folder = cur_folder->getParentFolder(); + } + + std::vector items_to_select_reverse; + + LLFolderViewItem* last_selected_item_from_new = new_selection; + cur_folder = new_selection->getParentFolder(); + while(cur_folder != common_ancestor) + { + cur_folder->gatherChildRangeExclusive(last_selected_item_from_new, NULL, !reverse, items_to_select_reverse); + + last_selected_item_from_new = cur_folder; + cur_folder = cur_folder->getParentFolder(); + } + + common_ancestor->gatherChildRangeExclusive(last_selected_item_from_cur, last_selected_item_from_new, reverse, items_to_select_forward); + + for (std::vector::reverse_iterator it = items_to_select_reverse.rbegin(), end_it = items_to_select_reverse.rend(); + it != end_it; + ++it) + { + items_to_select_forward.push_back(*it); + } + + LLFolderView* root = getRoot(); + + for (std::vector::iterator it = items_to_select_forward.begin(), end_it = items_to_select_forward.end(); + it != end_it; + ++it) + { + LLFolderViewItem* item = *it; + if (item->isSelected()) + { + root->removeFromSelectionList(item); + } + else + { + item->selectItem(); + } + root->addToSelectionList(item); + } + + if (new_selection->isSelected()) + { + root->removeFromSelectionList(new_selection); + } + else + { + new_selection->selectItem(); + } + root->addToSelectionList(new_selection); +} + + +void LLFolderViewFolder::destroyView() +{ + std::for_each(mItems.begin(), mItems.end(), DeletePointer()); + mItems.clear(); + + while (!mFolders.empty()) + { + LLFolderViewFolder *folderp = mFolders.back(); + folderp->destroyView(); // removes entry from mFolders + } + + LLFolderViewItem::destroyView(); +} + +// extractItem() removes the specified item from the folder, but +// doesn't delete it. +void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) +{ + items_t::iterator it = std::find(mItems.begin(), mItems.end(), item); + if(it == mItems.end()) + { + // This is an evil downcast. However, it's only doing + // pointer comparison to find if (which it should be ) the + // item is in the container, so it's pretty safe. + LLFolderViewFolder* f = static_cast(item); + folders_t::iterator ft; + ft = std::find(mFolders.begin(), mFolders.end(), f); + if (ft != mFolders.end()) + { + mFolders.erase(ft); + } + } + else + { + mItems.erase(it); + } + //item has been removed, need to update filter + getViewModelItem()->removeChild(item->getViewModelItem()); + getViewModelItem()->dirtyFilter(); + //because an item is going away regardless of filter status, force rearrange + requestArrange(); + removeChild(item); +} + +BOOL LLFolderViewFolder::isMovable() +{ + if( !(getViewModelItem()->isItemMovable()) ) + { + return FALSE; + } + + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + if(!(*iit)->isMovable()) + { + return FALSE; + } + } + + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + if(!(*fit)->isMovable()) + { + return FALSE; + } + } + return TRUE; +} + + +BOOL LLFolderViewFolder::isRemovable() +{ + if( !(getViewModelItem()->isItemRemovable()) ) + { + return FALSE; + } + + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + if(!(*iit)->isRemovable()) + { + return FALSE; + } + } + + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + if(!(*fit)->isRemovable()) + { + return FALSE; + } + } + return TRUE; +} + +// this is an internal method used for adding items to folders. +BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) +{ + if (item->getParentFolder()) + { + item->getParentFolder()->extractItem(item); + } + item->setParentFolder(this); + + mItems.push_back(item); + + item->setRect(LLRect(0, 0, getRect().getWidth(), 0)); + item->setVisible(FALSE); + + addChild(item); + + item->getViewModelItem()->dirtyFilter(); + + // Handle sorting + requestArrange(); + requestSort(); + + getViewModelItem()->addChild(item->getViewModelItem()); + + //TODO RN - make sort bubble up as long as parent Folder doesn't have anything matching sort criteria + //// Traverse parent folders and update creation date and resort, if necessary + //LLFolderViewFolder* parentp = this; + //while (parentp) + //{ + // if (parentp->mSortFunction.isByDate()) + // { + // // parent folder doesn't have a time stamp yet, so get it from us + // parentp->requestSort(); + // } + + // parentp = parentp->getParentFolder(); + //} + + return TRUE; +} + +// this is an internal method used for adding items to folders. +BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) +{ + if (folder->mParentFolder) + { + folder->mParentFolder->extractItem(folder); + } + folder->mParentFolder = this; + mFolders.push_back(folder); + folder->setOrigin(0, 0); + folder->reshape(getRect().getWidth(), 0); + folder->setVisible(FALSE); + addChild( folder ); + folder->getViewModelItem()->dirtyFilter(); + // rearrange all descendants too, as our indentation level might have changed + folder->requestArrange(); + requestSort(); + + getViewModelItem()->addChild(folder->getViewModelItem()); + + return TRUE; +} + +void LLFolderViewFolder::requestArrange() +{ + mLastArrangeGeneration = -1; + // flag all items up to root + if (mParentFolder) + { + mParentFolder->requestArrange(); + } +} + +void LLFolderViewFolder::toggleOpen() +{ + setOpen(!isOpen()); +} + +// Force a folder open or closed +void LLFolderViewFolder::setOpen(BOOL openitem) +{ + setOpenArrangeRecursively(openitem); +} + +void LLFolderViewFolder::setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse) +{ + BOOL was_open = isOpen(); + mIsOpen = openitem; + if(!was_open && openitem) + { + getViewModelItem()->openItem(); + } + else if(was_open && !openitem) + { + getViewModelItem()->closeItem(); + } + + if (recurse == RECURSE_DOWN || recurse == RECURSE_UP_DOWN) + { + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + (*fit)->setOpenArrangeRecursively(openitem, RECURSE_DOWN); /* Flawfinder: ignore */ + } + } + if (mParentFolder + && (recurse == RECURSE_UP + || recurse == RECURSE_UP_DOWN)) + { + mParentFolder->setOpenArrangeRecursively(openitem, RECURSE_UP); + } + + if (was_open != isOpen()) + { + requestArrange(); + } +} + +BOOL LLFolderViewFolder::handleDragAndDropFromChild(MASK mask, + BOOL drop, + EDragAndDropType c_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg) +{ + BOOL accepted = mViewModelItem->dragOrDrop(mask,drop,c_type,cargo_data, tooltip_msg); + if (accepted) + { + mDragAndDropTarget = TRUE; + *accept = ACCEPT_YES_MULTI; + } + else + { + *accept = ACCEPT_NO; + } + + // drag and drop to child item, so clear pending auto-opens + getRoot()->autoOpenTest(NULL); + + return TRUE; +} + +void LLFolderViewFolder::openItem( void ) +{ + toggleOpen(); +} + +void LLFolderViewFolder::applyFunctorToChildren(LLFolderViewFunctor& functor) +{ + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + functor.doItem((*fit)); + } + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + functor.doItem((*iit)); + } +} + +void LLFolderViewFolder::applyFunctorRecursively(LLFolderViewFunctor& functor) +{ + functor.doFolder(this); + + for (folders_t::iterator iter = mFolders.begin(); + iter != mFolders.end();) + { + folders_t::iterator fit = iter++; + (*fit)->applyFunctorRecursively(functor); + } + for (items_t::iterator iter = mItems.begin(); + iter != mItems.end();) + { + items_t::iterator iit = iter++; + functor.doItem((*iit)); + } +} + +// LLView functionality +BOOL LLFolderViewFolder::handleDragAndDrop(S32 x, S32 y, MASK mask, + BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg) +{ + BOOL handled = FALSE; + + if (isOpen()) + { + handled = (childrenHandleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg) != NULL); + } + + if (!handled) + { + handleDragAndDropToThisFolder(mask, drop, cargo_type, cargo_data, accept, tooltip_msg); + + lldebugst(LLERR_USER_INPUT) << "dragAndDrop handled by LLFolderViewFolder" << llendl; + } + + return TRUE; +} + +BOOL LLFolderViewFolder::handleDragAndDropToThisFolder(MASK mask, + BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg) +{ + BOOL accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); + + if (accepted) + { + mDragAndDropTarget = TRUE; + *accept = ACCEPT_YES_MULTI; + } + else + { + *accept = ACCEPT_NO; + } + + if (!drop && accepted) + { + getRoot()->autoOpenTest(this); + } + + return TRUE; +} + + +BOOL LLFolderViewFolder::handleRightMouseDown( S32 x, S32 y, MASK mask ) +{ + BOOL handled = FALSE; + + if( isOpen() ) + { + handled = childrenHandleRightMouseDown( x, y, mask ) != NULL; + } + if (!handled) + { + handled = LLFolderViewItem::handleRightMouseDown( x, y, mask ); + } + return handled; +} + + +BOOL LLFolderViewFolder::handleHover(S32 x, S32 y, MASK mask) +{ + mIsMouseOverTitle = (y > (getRect().getHeight() - mItemHeight)); + + BOOL handled = LLView::handleHover(x, y, mask); + + if (!handled) + { + // this doesn't do child processing + handled = LLFolderViewItem::handleHover(x, y, mask); + } + + return handled; +} + +BOOL LLFolderViewFolder::handleMouseDown( S32 x, S32 y, MASK mask ) +{ + BOOL handled = FALSE; + if( isOpen() ) + { + handled = childrenHandleMouseDown(x,y,mask) != NULL; + } + if( !handled ) + { + if(mIndentation < x && x < mIndentation + ARROW_SIZE + TEXT_PAD) + { + toggleOpen(); + handled = TRUE; + } + else + { + // do normal selection logic + handled = LLFolderViewItem::handleMouseDown(x, y, mask); + } + } + + return handled; +} + +BOOL LLFolderViewFolder::handleDoubleClick( S32 x, S32 y, MASK mask ) +{ + BOOL handled = FALSE; + if( isOpen() ) + { + handled = childrenHandleDoubleClick( x, y, mask ) != NULL; + } + if( !handled ) + { + if(mIndentation < x && x < mIndentation + ARROW_SIZE + TEXT_PAD) + { + // don't select when user double-clicks plus sign + // so as not to contradict single-click behavior + toggleOpen(); + } + else + { + getRoot()->setSelection(this, FALSE); + toggleOpen(); + } + handled = TRUE; + } + return handled; +} + +void LLFolderViewFolder::draw() +{ + if (mAutoOpenCountdown != 0.f) + { + mControlLabelRotation = mAutoOpenCountdown * -90.f; + } + else if (isOpen()) + { + mControlLabelRotation = lerp(mControlLabelRotation, -90.f, LLCriticalDamp::getInterpolant(0.04f)); + } + else + { + mControlLabelRotation = lerp(mControlLabelRotation, 0.f, LLCriticalDamp::getInterpolant(0.025f)); + } + + LLFolderViewItem::draw(); + + // draw children if root folder, or any other folder that is open or animating to closed state + if( getRoot() == this || (isOpen() || mCurHeight != mTargetHeight )) + { + LLView::draw(); + } + + mExpanderHighlighted = FALSE; +} + +// this does prefix traversal, as folders are listed above their contents +LLFolderViewItem* LLFolderViewFolder::getNextFromChild( LLFolderViewItem* item, BOOL include_children ) +{ + BOOL found_item = FALSE; + + LLFolderViewItem* result = NULL; + // when not starting from a given item, start at beginning + if(item == NULL) + { + found_item = TRUE; + } + + // find current item among children + folders_t::iterator fit = mFolders.begin(); + folders_t::iterator fend = mFolders.end(); + + items_t::iterator iit = mItems.begin(); + items_t::iterator iend = mItems.end(); + + // if not trivially starting at the beginning, we have to find the current item + if (!found_item) + { + // first, look among folders, since they are always above items + for(; fit != fend; ++fit) + { + if(item == (*fit)) + { + found_item = TRUE; + // if we are on downwards traversal + if (include_children && (*fit)->isOpen()) + { + // look for first descendant + return (*fit)->getNextFromChild(NULL, TRUE); + } + // otherwise advance to next folder + ++fit; + include_children = TRUE; + break; + } + } + + // didn't find in folders? Check items... + if (!found_item) + { + for(; iit != iend; ++iit) + { + if(item == (*iit)) + { + found_item = TRUE; + // point to next item + ++iit; + break; + } + } + } + } + + if (!found_item) + { + // you should never call this method with an item that isn't a child + // so we should always find something + llassert(FALSE); + return NULL; + } + + // at this point, either iit or fit point to a candidate "next" item + // if both are out of range, we need to punt up to our parent + + // now, starting from found folder, continue through folders + // searching for next visible folder + while(fit != fend && !(*fit)->getVisible()) + { + // turn on downwards traversal for next folder + ++fit; + } + + if (fit != fend) + { + result = (*fit); + } + else + { + // otherwise, scan for next visible item + while(iit != iend && !(*iit)->getVisible()) + { + ++iit; + } + + // check to see if we have a valid item + if (iit != iend) + { + result = (*iit); + } + } + + if( !result && mParentFolder ) + { + // If there are no siblings or children to go to, recurse up one level in the tree + // and skip children for this folder, as we've already discounted them + result = mParentFolder->getNextFromChild(this, FALSE); + } + + return result; +} + +// this does postfix traversal, as folders are listed above their contents +LLFolderViewItem* LLFolderViewFolder::getPreviousFromChild( LLFolderViewItem* item, BOOL include_children ) +{ + BOOL found_item = FALSE; + + LLFolderViewItem* result = NULL; + // when not starting from a given item, start at end + if(item == NULL) + { + found_item = TRUE; + } + + // find current item among children + folders_t::reverse_iterator fit = mFolders.rbegin(); + folders_t::reverse_iterator fend = mFolders.rend(); + + items_t::reverse_iterator iit = mItems.rbegin(); + items_t::reverse_iterator iend = mItems.rend(); + + // if not trivially starting at the end, we have to find the current item + if (!found_item) + { + // first, look among items, since they are always below the folders + for(; iit != iend; ++iit) + { + if(item == (*iit)) + { + found_item = TRUE; + // point to next item + ++iit; + break; + } + } + + // didn't find in items? Check folders... + if (!found_item) + { + for(; fit != fend; ++fit) + { + if(item == (*fit)) + { + found_item = TRUE; + // point to next folder + ++fit; + break; + } + } + } + } + + if (!found_item) + { + // you should never call this method with an item that isn't a child + // so we should always find something + llassert(FALSE); + return NULL; + } + + // at this point, either iit or fit point to a candidate "next" item + // if both are out of range, we need to punt up to our parent + + // now, starting from found item, continue through items + // searching for next visible item + while(iit != iend && !(*iit)->getVisible()) + { + ++iit; + } + + if (iit != iend) + { + // we found an appropriate item + result = (*iit); + } + else + { + // otherwise, scan for next visible folder + while(fit != fend && !(*fit)->getVisible()) + { + ++fit; + } + + // check to see if we have a valid folder + if (fit != fend) + { + // try selecting child element of this folder + if ((*fit)->isOpen()) + { + result = (*fit)->getPreviousFromChild(NULL); + } + else + { + result = (*fit); + } + } + } + + if( !result ) + { + // If there are no siblings or children to go to, recurse up one level in the tree + // which gets back to this folder, which will only be visited if it is a valid, visible item + result = this; + } + + return result; +} + diff --git a/indra/llui/llfolderviewitem.h b/indra/llui/llfolderviewitem.h new file mode 100644 index 0000000000..9cb885066a --- /dev/null +++ b/indra/llui/llfolderviewitem.h @@ -0,0 +1,420 @@ +/** +* @file llfolderviewitem.h +* @brief Items and folders that can appear in a hierarchical folder view +* +* $LicenseInfo:firstyear=2001&license=viewerlgpl$ +* Second Life Viewer Source Code +* Copyright (C) 2010, Linden Research, Inc. +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU Lesser General Public +* License as published by the Free Software Foundation; +* version 2.1 of the License only. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +* Lesser General Public License for more details. +* +* You should have received a copy of the GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +* +* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA +* $/LicenseInfo$ +*/ +#ifndef LLFOLDERVIEWITEM_H +#define LLFOLDERVIEWITEM_H + +#include "llview.h" +#include "lluiimage.h" + +class LLFolderView; +class LLFolderViewModelItem; +class LLFolderViewFolder; +class LLFolderViewFunctor; +class LLFolderViewFilter; +class LLFolderViewModelInterface; + +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +// Class LLFolderViewItem +// +// An instance of this class represents a single item in a folder view +// such as an inventory item or a file. +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +class LLFolderViewItem : public LLView +{ +public: + static void initClass(); + static void cleanupClass(); + + struct Params : public LLInitParam::Block + { + Optional folder_arrow_image, + selection_image; + Optional root; + Mandatory listener; + + Optional folder_indentation, // pixels + item_height, + item_top_pad; + + Optional creation_date; + + Params(); + }; + + // layout constants + static const S32 LEFT_PAD = 5; + // LEFT_INDENTATION is set via folder_indentation above + static const S32 ICON_PAD = 2; + static const S32 ICON_WIDTH = 16; + static const S32 TEXT_PAD = 1; + static const S32 TEXT_PAD_RIGHT = 4; + static const S32 ARROW_SIZE = 12; + static const S32 MAX_FOLDER_ITEM_OVERLAP = 2; + // animation parameters + static const F32 FOLDER_CLOSE_TIME_CONSTANT; + static const F32 FOLDER_OPEN_TIME_CONSTANT; + +private: + BOOL mIsSelected; + +protected: + friend class LLUICtrlFactory; + friend class LLFolderViewModelItem; + + LLFolderViewItem(const Params& p); + + std::string mLabel; + S32 mLabelWidth; + bool mLabelWidthDirty; + LLFolderViewFolder* mParentFolder; + LLFolderViewModelItem* mViewModelItem; + BOOL mIsCurSelection; + BOOL mSelectPending; + LLFontGL::StyleFlags mLabelStyle; + std::string mLabelSuffix; + LLUIImagePtr mIcon; + LLUIImagePtr mIconOpen; + LLUIImagePtr mIconOverlay; + BOOL mHasVisibleChildren; + S32 mIndentation; + S32 mItemHeight; + S32 mDragStartX, + mDragStartY; + + //TODO RN: create interface for string highlighting + //std::string::size_type mStringMatchOffset; + F32 mControlLabelRotation; + LLFolderView* mRoot; + BOOL mDragAndDropTarget; + bool mIsMouseOverTitle; + + // this is an internal method used for adding items to folders. A + // no-op at this level, but reimplemented in derived classes. + virtual BOOL addItem(LLFolderViewItem*) { return FALSE; } + virtual BOOL addFolder(LLFolderViewFolder*) { return FALSE; } + + static LLFontGL* getLabelFontForStyle(U8 style); + +public: + BOOL postBuild(); + + virtual void openItem( void ); + + void arrangeAndSet(BOOL set_selection, BOOL take_keyboard_focus); + + virtual ~LLFolderViewItem( void ); + + // addToFolder() returns TRUE if it succeeds. FALSE otherwise + virtual BOOL addToFolder(LLFolderViewFolder* folder); + + // Finds width and height of this object and it's children. Also + // makes sure that this view and it's children are the right size. + virtual S32 arrange( S32* width, S32* height ); + virtual S32 getItemHeight(); + + // If 'selection' is 'this' then note that otherwise ignore. + // Returns TRUE if this item ends up being selected. + virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus); + + // This method is used to set the selection state of an item. + // If 'selection' is 'this' then note selection. + // Returns TRUE if the selection state of this item was changed. + virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); + + // this method is used to deselect this element + void deselectItem(); + + // this method is used to select this element + virtual void selectItem(); + + // gets multiple-element selection + virtual std::set getSelectionList() const; + + // Returns true is this object and all of its children can be removed (deleted by user) + virtual BOOL isRemovable(); + + // Returns true is this object and all of its children can be moved + virtual BOOL isMovable(); + + // destroys this item recursively + virtual void destroyView(); + + BOOL isSelected() const { return mIsSelected; } + + void setUnselected() { mIsSelected = FALSE; } + + void setIsCurSelection(BOOL select) { mIsCurSelection = select; } + + BOOL getIsCurSelection() { return mIsCurSelection; } + + BOOL hasVisibleChildren() { return mHasVisibleChildren; } + + // Call through to the viewed object and return true if it can be + // removed. Returns true if it's removed. + //virtual BOOL removeRecursively(BOOL single_item); + BOOL remove(); + + // Build an appropriate context menu for the item. Flags unused. + void buildContextMenu(class LLMenuGL& menu, U32 flags); + + // This method returns the actual name of the thing being + // viewed. This method will ask the viewed object itself. + const std::string& getName( void ) const; + + // This method returns the label displayed on the view. This + // method was primarily added to allow sorting on the folder + // contents possible before the entire view has been constructed. + const std::string& getLabel() const { return mLabel; } + + + LLFolderViewFolder* getParentFolder( void ) { return mParentFolder; } + const LLFolderViewFolder* getParentFolder( void ) const { return mParentFolder; } + + void setParentFolder(LLFolderViewFolder* parent) { mParentFolder = parent; } + + LLFolderViewItem* getNextOpenNode( BOOL include_children = TRUE ); + LLFolderViewItem* getPreviousOpenNode( BOOL include_children = TRUE ); + + const LLFolderViewModelItem* getViewModelItem( void ) const { return mViewModelItem; } + LLFolderViewModelItem* getViewModelItem( void ) { return mViewModelItem; } + + const LLFolderViewModelInterface* getFolderViewModel( void ) const; + LLFolderViewModelInterface* getFolderViewModel( void ); + + // just rename the object. + void rename(const std::string& new_name); + + + // Show children (unfortunate that this is called "open") + virtual void setOpen(BOOL open = TRUE) {}; + virtual BOOL isOpen() const { return FALSE; } + + virtual LLFolderView* getRoot(); + virtual const LLFolderView* getRoot() const; + BOOL isDescendantOf( const LLFolderViewFolder* potential_ancestor ); + S32 getIndentation() { return mIndentation; } + + virtual BOOL passedFilter(S32 filter_generation = -1); + + // refresh information from the object being viewed. + virtual void refresh(); + + // LLView functionality + virtual BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); + virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask ); + virtual BOOL handleHover( S32 x, S32 y, MASK mask ); + virtual BOOL handleMouseUp( S32 x, S32 y, MASK mask ); + virtual BOOL handleDoubleClick( S32 x, S32 y, MASK mask ); + + virtual void onMouseLeave(S32 x, S32 y, MASK mask); + + virtual LLView* findChildView(const std::string& name, BOOL recurse) const { return NULL; } + + // virtual void handleDropped(); + virtual void draw(); + virtual BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg); + +private: + static std::map sFonts; // map of styles to fonts +}; + +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +// Class LLFolderViewFolder +// +// An instance of an LLFolderViewFolder represents a collection of +// more folders and items. This is used to build the hierarchy of +// items found in the folder view. +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +class LLFolderViewFolder : public LLFolderViewItem +{ +protected: + LLFolderViewFolder( const LLFolderViewItem::Params& ); + friend class LLUICtrlFactory; + +public: + + typedef std::list items_t; + typedef std::list folders_t; + +protected: + items_t mItems; + folders_t mFolders; + + BOOL mIsOpen; + BOOL mExpanderHighlighted; + F32 mCurHeight; + F32 mTargetHeight; + F32 mAutoOpenCountdown; + S32 mLastArrangeGeneration; + S32 mLastCalculatedWidth; + S32 mMostFilteredDescendantGeneration; + bool mNeedsSort; + +public: + typedef enum e_recurse_type + { + RECURSE_NO, + RECURSE_UP, + RECURSE_DOWN, + RECURSE_UP_DOWN + } ERecurseType; + + + virtual ~LLFolderViewFolder( void ); + + LLFolderViewItem* getNextFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); + LLFolderViewItem* getPreviousFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); + + // addToFolder() returns TRUE if it succeeds. FALSE otherwise + virtual BOOL addToFolder(LLFolderViewFolder* folder); + + // Finds width and height of this object and it's children. Also + // makes sure that this view and it's children are the right size. + virtual S32 arrange( S32* width, S32* height ); + + BOOL needsArrange(); + + bool descendantsPassedFilter(S32 filter_generation = -1); + + // Passes selection information on to children and record + // selection information if necessary. + // Returns TRUE if this object (or a child) ends up being selected. + // If 'openitem' is TRUE then folders are opened up along the way to the selection. + virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus = TRUE); + + // This method is used to change the selection of an item. + // Recursively traverse all children; if 'selection' is 'this' then change + // the select status if necessary. + // Returns TRUE if the selection state of this folder, or of a child, was changed. + virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); + + // this method is used to group select items + void extendSelectionTo(LLFolderViewItem* selection); + + // Returns true is this object and all of its children can be removed. + virtual BOOL isRemovable(); + + // Returns true is this object and all of its children can be moved + virtual BOOL isMovable(); + + // destroys this folder, and all children + virtual void destroyView(); + + // If this folder can be removed, remove all children that can be + // removed, return TRUE if this is empty after the operation and + // it's viewed folder object can be removed. + //virtual BOOL removeRecursively(BOOL single_item); + //virtual BOOL remove(); + + // extractItem() removes the specified item from the folder, but + // doesn't delete it. + virtual void extractItem( LLFolderViewItem* item ); + + // This function is called by a child that needs to be resorted. + void resort(LLFolderViewItem* item); + + void setAutoOpenCountdown(F32 countdown) { mAutoOpenCountdown = countdown; } + + // folders can be opened. This will usually be called by internal + // methods. + virtual void toggleOpen(); + + // Force a folder open or closed + virtual void setOpen(BOOL openitem = TRUE); + + // Called when a child is refreshed. + virtual void requestArrange(); + + virtual void requestSort(); + + // internal method which doesn't update the entire view. This + // method was written because the list iterators destroy the state + // of other iterations, thus, we can't arrange while iterating + // through the children (such as when setting which is selected. + virtual void setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse = RECURSE_NO); + + // Get the current state of the folder. + virtual BOOL isOpen() const { return mIsOpen; } + + // special case if an object is dropped on the child. + BOOL handleDragAndDropFromChild(MASK mask, + BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg); + + void applyFunctorRecursively(LLFolderViewFunctor& functor); + + // Just apply this functor to the folder's immediate children. + void applyFunctorToChildren(LLFolderViewFunctor& functor); + + virtual void openItem( void ); + virtual BOOL addItem(LLFolderViewItem* item); + virtual BOOL addFolder( LLFolderViewFolder* folder); + + // LLView functionality + virtual BOOL handleHover(S32 x, S32 y, MASK mask); + virtual BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); + virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask ); + virtual BOOL handleDoubleClick( S32 x, S32 y, MASK mask ); + virtual BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg); + BOOL handleDragAndDropToThisFolder(MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + EAcceptance* accept, + std::string& tooltip_msg); + virtual void draw(); + + folders_t::iterator getFoldersBegin() { return mFolders.begin(); } + folders_t::iterator getFoldersEnd() { return mFolders.end(); } + folders_t::size_type getFoldersCount() const { return mFolders.size(); } + + items_t::const_iterator getItemsBegin() const { return mItems.begin(); } + items_t::const_iterator getItemsEnd() const { return mItems.end(); } + items_t::size_type getItemsCount() const { return mItems.size(); } + + LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse); + void gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items); + +public: + //WARNING: do not call directly...use the appropriate LLFolderViewModel-derived class instead + template void sortFolders(const SORT_FUNC& func) { mFolders.sort(func); } + template void sortItems(const SORT_FUNC& func) { mItems.sort(func); } +}; + + +#endif // LLFOLDERVIEWITEM_H diff --git a/indra/llui/llfolderviewmodel.cpp b/indra/llui/llfolderviewmodel.cpp new file mode 100644 index 0000000000..dc6e4d754b --- /dev/null +++ b/indra/llui/llfolderviewmodel.cpp @@ -0,0 +1,53 @@ +/** + * @file llfolderviewmodel.cpp + * @brief Implementation of the view model collection of classes. + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#include "linden_common.h" + +#include "llfolderviewmodel.h" +#include "lltrans.h" + +bool LLFolderViewModelCommon::needsSort(LLFolderViewModelItem* item) +{ + return item->getSortVersion() < mTargetSortVersion; +} + +std::string LLFolderViewModelCommon::getStatusText() +{ + if (!contentsReady() || mFolderView->getViewModelItem()->getLastFilterGeneration() < getFilter()->getCurrentGeneration()) + { + return LLTrans::getString("Searching"); + } + else + { + return getFilter()->getEmptyLookupMessage(); + } +} + +void LLFolderViewModelCommon::filter() +{ + getFilter()->setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); + mFolderView->getViewModelItem()->filter(*getFilter()); +} diff --git a/indra/llui/llfolderviewmodel.h b/indra/llui/llfolderviewmodel.h new file mode 100644 index 0000000000..0f5f9a1f50 --- /dev/null +++ b/indra/llui/llfolderviewmodel.h @@ -0,0 +1,353 @@ +/** + * @file llfolderviewmodel.h + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ +#ifndef LLFOLDERVIEWMODEL_H +#define LLFOLDERVIEWMODEL_H + +#include "llfontgl.h" // just for StyleFlags enum +#include "llfolderview.h" + +// These are grouping of inventory types. +// Order matters when sorting system folders to the top. +enum EInventorySortGroup +{ + SG_SYSTEM_FOLDER, + SG_TRASH_FOLDER, + SG_NORMAL_FOLDER, + SG_ITEM +}; + +class LLFontGL; +class LLInventoryModel; +class LLMenuGL; +class LLUIImage; +class LLUUID; +class LLFolderViewItem; +class LLFolderViewFolder; + +class LLFolderViewFilter +{ +public: + enum EFilterModified + { + FILTER_NONE, // nothing to do, already filtered + FILTER_RESTART, // restart filtering from scratch + FILTER_LESS_RESTRICTIVE, // existing filtered items will certainly pass this filter + FILTER_MORE_RESTRICTIVE // if you didn't pass the previous filter, you definitely won't pass this one + }; + +public: + + LLFolderViewFilter() {} + virtual ~LLFolderViewFilter() {} + + // +-------------------------------------------------------------------+ + // + Execution And Results + // +-------------------------------------------------------------------+ + virtual bool check(const LLFolderViewModelItem* item) = 0; + virtual bool checkFolder(const LLFolderViewModelItem* folder) const = 0; + + virtual void setEmptyLookupMessage(const std::string& message) = 0; + virtual std::string getEmptyLookupMessage() const = 0; + + virtual bool showAllResults() const = 0; + + // +-------------------------------------------------------------------+ + // + Status + // +-------------------------------------------------------------------+ + virtual bool isActive() const = 0; + virtual bool isModified() const = 0; + virtual void clearModified() = 0; + virtual const std::string& getName() const = 0; + virtual const std::string& getFilterText() = 0; + //RN: this is public to allow system to externally force a global refilter + virtual void setModified(EFilterModified behavior = FILTER_RESTART) = 0; + + // +-------------------------------------------------------------------+ + // + Count + // +-------------------------------------------------------------------+ + virtual void setFilterCount(S32 count) = 0; + virtual S32 getFilterCount() const = 0; + virtual void decrementFilterCount() = 0; + + // +-------------------------------------------------------------------+ + // + Default + // +-------------------------------------------------------------------+ + virtual bool isDefault() const = 0; + virtual bool isNotDefault() const = 0; + virtual void markDefault() = 0; + virtual void resetDefault() = 0; + + // +-------------------------------------------------------------------+ + // + Generation + // +-------------------------------------------------------------------+ + virtual S32 getCurrentGeneration() const = 0; + virtual S32 getFirstSuccessGeneration() const = 0; + virtual S32 getFirstRequiredGeneration() const = 0; +}; + +class LLFolderViewModelInterface +{ +public: + virtual ~LLFolderViewModelInterface() {} + virtual void requestSortAll() = 0; + + virtual void sort(class LLFolderViewFolder*) = 0; + virtual void filter() = 0; + + virtual bool contentsReady() = 0; + virtual void setFolderView(LLFolderView* folder_view) = 0; + virtual LLFolderViewFilter* getFilter() = 0; + virtual const LLFolderViewFilter* getFilter() const = 0; + virtual std::string getStatusText() = 0; + + virtual bool startDrag(std::vector& items) = 0; +}; + +class LLFolderViewModelCommon : public LLFolderViewModelInterface +{ +public: + LLFolderViewModelCommon() + : mTargetSortVersion(0), + mFolderView(NULL) + {} + + virtual void requestSortAll() + { + // sort everything + mTargetSortVersion++; + } + virtual std::string getStatusText(); + virtual void filter(); + + void setFolderView(LLFolderView* folder_view) { mFolderView = folder_view;} + +protected: + bool needsSort(class LLFolderViewModelItem* item); + + S32 mTargetSortVersion; + LLFolderView* mFolderView; + +}; + +template +class LLFolderViewModel : public LLFolderViewModelCommon +{ +public: + LLFolderViewModel(){} + virtual ~LLFolderViewModel() {} + + typedef SORT_TYPE SortType; + typedef ITEM_TYPE ItemType; + typedef FOLDER_TYPE FolderType; + typedef FILTER_TYPE FilterType; + + virtual SortType& getSorter() { return mSorter; } + virtual const SortType& getSorter() const { return mSorter; } + virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } + + virtual FilterType* getFilter() { return &mFilter; } + virtual const FilterType* getFilter() const { return &mFilter; } + virtual void setFilter(const FilterType& filter) { mFilter = filter; } + + // TODO RN: remove this and put all filtering logic in view model + // add getStatusText and isFiltering() + virtual bool contentsReady() { return true; } + + + struct ViewModelCompare + { + ViewModelCompare(const SortType& sorter) + : mSorter(sorter) + {} + + bool operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) const + { + return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + } + + bool operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) const + { + return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); + } + + const SortType& mSorter; + }; + + void sort(LLFolderViewFolder* folder) + { + if (needsSort(folder->getViewModelItem())) + { + folder->sortFolders(ViewModelCompare(getSorter())); + folder->sortItems(ViewModelCompare(getSorter())); + folder->getViewModelItem()->setSortVersion(mTargetSortVersion); + folder->requestArrange(); + } + } + +protected: + SortType mSorter; + FilterType mFilter; +}; + +// This is am abstract base class that users of the folderview classes +// would use to bridge the folder view with the underlying data +class LLFolderViewModelItem +{ +public: + virtual ~LLFolderViewModelItem( void ) {}; + + virtual void update() {} //called when drawing + virtual const std::string& getName() const = 0; + virtual const std::string& getDisplayName() const = 0; + virtual const std::string& getSearchableName() const = 0; + + virtual LLPointer getIcon() const = 0; + virtual LLPointer getIconOpen() const { return getIcon(); } + virtual LLPointer getIconOverlay() const { return NULL; } + + virtual LLFontGL::StyleFlags getLabelStyle() const = 0; + virtual std::string getLabelSuffix() const = 0; + + virtual void openItem( void ) = 0; + virtual void closeItem( void ) = 0; + virtual void selectItem(void) = 0; + + virtual BOOL isItemRenameable() const = 0; + virtual BOOL renameItem(const std::string& new_name) = 0; + + virtual BOOL isItemMovable( void ) const = 0; // Can be moved to another folder + virtual void move( LLFolderViewModelItem* parent_listener ) = 0; + + virtual BOOL isItemRemovable( void ) const = 0; // Can be destroyed + virtual BOOL removeItem() = 0; + virtual void removeBatch(std::vector& batch) = 0; + + virtual BOOL isItemCopyable() const = 0; + virtual BOOL copyToClipboard() const = 0; + virtual BOOL cutToClipboard() const = 0; + + virtual BOOL isClipboardPasteable() const = 0; + virtual void pasteFromClipboard() = 0; + virtual void pasteLinkFromClipboard() = 0; + + virtual void buildContextMenu(LLMenuGL& menu, U32 flags) = 0; + + virtual bool potentiallyVisible() = 0; // is the item definitely visible or we haven't made up our minds yet? + + virtual bool filter( LLFolderViewFilter& filter) = 0; + virtual bool passedFilter(S32 filter_generation = -1) = 0; + virtual bool descendantsPassedFilter(S32 filter_generation = -1) = 0; + virtual void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) = 0; + virtual void dirtyFilter() = 0; + + virtual S32 getLastFilterGeneration() const = 0; + + virtual bool hasChildren() const = 0; + virtual void addChild(LLFolderViewModelItem* child) = 0; + virtual void removeChild(LLFolderViewModelItem* child) = 0; + + // This method will be called to determine if a drop can be + // performed, and will set drop to TRUE if a drop is + // requested. Returns TRUE if a drop is possible/happened, + // otherwise FALSE. + virtual BOOL dragOrDrop(MASK mask, BOOL drop, + EDragAndDropType cargo_type, + void* cargo_data, + std::string& tooltip_msg) = 0; + + virtual void requestSort() = 0; + virtual S32 getSortVersion() = 0; + virtual void setSortVersion(S32 version) = 0; + virtual void setParent(LLFolderViewModelItem* parent) = 0; + +protected: + + friend class LLFolderViewItem; + virtual void setFolderViewItem(LLFolderViewItem* folder_view_item) = 0; + +}; + +class LLFolderViewModelItemCommon : public LLFolderViewModelItem +{ +public: + LLFolderViewModelItemCommon() + : mSortVersion(-1), + mPassedFilter(true), + mPassedFolderFilter(true), + mFolderViewItem(NULL), + mLastFilterGeneration(-1), + mMostFilteredDescendantGeneration(-1), + mParent(NULL) + { + std::for_each(mChildren.begin(), mChildren.end(), DeletePointer()); + } + + void requestSort() { mSortVersion = -1; } + S32 getSortVersion() { return mSortVersion; } + void setSortVersion(S32 version) { mSortVersion = version;} + + S32 getLastFilterGeneration() const { return mLastFilterGeneration; } + void dirtyFilter() + { + mLastFilterGeneration = -1; + + // bubble up dirty flag all the way to root + if (mParent) + { + mParent->dirtyFilter(); + } + } + virtual void addChild(LLFolderViewModelItem* child) + { + mChildren.push_back(child); + child->setParent(this); + } + virtual void removeChild(LLFolderViewModelItem* child) + { + mChildren.remove(child); + child->setParent(NULL); + } + +protected: + virtual void setParent(LLFolderViewModelItem* parent) { mParent = parent; } + + S32 mSortVersion; + bool mPassedFilter; + bool mPassedFolderFilter; + + S32 mLastFilterGeneration; + S32 mMostFilteredDescendantGeneration; + + + typedef std::list child_list_t; + child_list_t mChildren; + LLFolderViewModelItem* mParent; + + void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;} + LLFolderViewItem* mFolderViewItem; +}; + + +#endif // LLFOLDERVIEWMODEL_H diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 64bc70da58..b31b99f47c 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -253,9 +253,6 @@ set(viewer_SOURCE_FILES llfloaterwhitelistentry.cpp llfloaterwindowsize.cpp llfloaterworldmap.cpp - llfolderview.cpp - llfolderviewitem.cpp - llfolderviewmodel.cpp llfolderviewmodelinventory.cpp llfollowcam.cpp llfriendcard.cpp @@ -813,10 +810,7 @@ set(viewer_HEADER_FILES llfloaterwhitelistentry.h llfloaterwindowsize.h llfloaterworldmap.h - llfolderview.h - llfolderviewmodel.h llfolderviewmodelinventory.h - llfolderviewitem.h llfollowcam.h llfriendcard.h llgesturelistener.h diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp deleted file mode 100644 index 10677db094..0000000000 --- a/indra/newview/llfolderview.cpp +++ /dev/null @@ -1,2105 +0,0 @@ -/** - * @file llfolderview.cpp - * @brief Implementation of the folder view collection of classes. - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#include "llviewerprecompiledheaders.h" - -#include "llfolderview.h" -#include "llfolderviewmodel.h" -#include "llclipboard.h" // *TODO: remove this once hack below gone. -#include "llkeyboard.h" -#include "lllineeditor.h" -#include "llmenugl.h" -#include "llpanel.h" -#include "llscrollcontainer.h" // hack to allow scrolling -#include "lltextbox.h" -#include "lltrans.h" -#include "llui.h" -#include "lluictrlfactory.h" - -// Linden library includes -#include "lldbstrings.h" -#include "llfocusmgr.h" -#include "llfontgl.h" -#include "llgl.h" -#include "llrender.h" - -// Third-party library includes -#include - -///---------------------------------------------------------------------------- -/// Local function declarations, constants, enums, and typedefs -///---------------------------------------------------------------------------- - -const S32 RENAME_WIDTH_PAD = 4; -const S32 RENAME_HEIGHT_PAD = 1; -const S32 AUTO_OPEN_STACK_DEPTH = 16; -const S32 MIN_ITEM_WIDTH_VISIBLE = LLFolderViewItem::ICON_WIDTH - + LLFolderViewItem::ICON_PAD - + LLFolderViewItem::ARROW_SIZE - + LLFolderViewItem::TEXT_PAD - + /*first few characters*/ 40; -const S32 MINIMUM_RENAMER_WIDTH = 80; - -// *TODO: move in params in xml if necessary. Requires modification of LLFolderView & LLInventoryPanel Params. -const S32 STATUS_TEXT_HPAD = 6; -const S32 STATUS_TEXT_VPAD = 8; - -enum { - SIGNAL_NO_KEYBOARD_FOCUS = 1, - SIGNAL_KEYBOARD_FOCUS = 2 -}; - -F32 LLFolderView::sAutoOpenTime = 1.f; - -//--------------------------------------------------------------------------- - -// Tells all folders in a folderview to close themselves -// For efficiency, calls setOpenArrangeRecursively(). -// The calling function must then call: -// LLFolderView* root = getRoot(); -// if( root ) -// { -// root->arrange( NULL, NULL ); -// root->scrollToShowSelection(); -// } -// to patch things up. -class LLCloseAllFoldersFunctor : public LLFolderViewFunctor -{ -public: - LLCloseAllFoldersFunctor(BOOL close) { mOpen = !close; } - virtual ~LLCloseAllFoldersFunctor() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); - - BOOL mOpen; -}; - - -void LLCloseAllFoldersFunctor::doFolder(LLFolderViewFolder* folder) -{ - folder->setOpenArrangeRecursively(mOpen); -} - -// Do nothing. -void LLCloseAllFoldersFunctor::doItem(LLFolderViewItem* item) -{ } - -///---------------------------------------------------------------------------- -/// Class LLFolderViewScrollContainer -///---------------------------------------------------------------------------- - -// virtual -const LLRect LLFolderViewScrollContainer::getScrolledViewRect() const -{ - LLRect rect = LLRect::null; - if (mScrolledView) - { - LLFolderView* folder_view = dynamic_cast(mScrolledView); - if (folder_view) - { - S32 height = folder_view->getRect().getHeight(); - - rect = mScrolledView->getRect(); - rect.setLeftTopAndSize(rect.mLeft, rect.mTop, rect.getWidth(), height); - } - } - - return rect; -} - -LLFolderViewScrollContainer::LLFolderViewScrollContainer(const LLScrollContainer::Params& p) -: LLScrollContainer(p) -{} - -///---------------------------------------------------------------------------- -/// Class LLFolderView -///---------------------------------------------------------------------------- -LLFolderView::Params::Params() -: task_id("task_id"), - title("title"), - use_label_suffix("use_label_suffix"), - allow_multiselect("allow_multiselect", true), - show_empty_message("show_empty_message", true), - use_ellipses("use_ellipses", false) -{ - folder_indentation = -4; -} - - -// Default constructor -LLFolderView::LLFolderView(const Params& p) -: LLFolderViewFolder(p), - mScrollContainer( NULL ), - mPopupMenuHandle(), - mAllowMultiSelect(p.allow_multiselect), - mShowEmptyMessage(p.show_empty_message), - mShowFolderHierarchy(FALSE), - mSourceID(p.task_id), - mRenameItem( NULL ), - mNeedsScroll( FALSE ), - mUseLabelSuffix(p.use_label_suffix), - mPinningSelectedItem(FALSE), - mNeedsAutoSelect( FALSE ), - mAutoSelectOverride(FALSE), - mNeedsAutoRename(FALSE), - mShowSelectionContext(FALSE), - mShowSingleSelection(FALSE), - mArrangeGeneration(0), - mSignalSelectCallback(0), - mMinWidth(0), - mDragAndDropThisFrame(FALSE), - mCallbackRegistrar(NULL), - mParentPanel(p.parent_panel), - mUseEllipses(p.use_ellipses), - mDraggingOverItem(NULL), - mStatusTextBox(NULL), - mShowItemLinkOverlays(p.show_item_link_overlays), - mViewModel(p.view_model) -{ - mViewModel->setFolderView(this); - mRoot = this; - - LLRect rect = p.rect; - LLRect new_rect(rect.mLeft, rect.mBottom + getRect().getHeight(), rect.mLeft + getRect().getWidth(), rect.mBottom); - setRect( rect ); - reshape(rect.getWidth(), rect.getHeight()); - mAutoOpenItems.setDepth(AUTO_OPEN_STACK_DEPTH); - mAutoOpenCandidate = NULL; - mAutoOpenTimer.stop(); - mKeyboardSelection = FALSE; - mIndentation = p.folder_indentation; - - //clear label - // go ahead and render root folder as usual - // just make sure the label ("Inventory Folder") never shows up - mLabel = LLStringUtil::null; - - // Escape is handled by reverting the rename, not commiting it (default behavior) - LLLineEditor::Params params; - params.name("ren"); - params.rect(rect); - params.font(getLabelFontForStyle(LLFontGL::NORMAL)); - params.max_length.bytes(DB_INV_ITEM_NAME_STR_LEN); - params.commit_callback.function(boost::bind(&LLFolderView::commitRename, this, _2)); - params.prevalidate_callback(&LLTextValidate::validateASCIIPrintableNoPipe); - params.commit_on_focus_lost(true); - params.visible(false); - mRenamer = LLUICtrlFactory::create (params); - addChild(mRenamer); - - // Textbox - LLTextBox::Params text_p; - LLFontGL* font = getLabelFontForStyle(mLabelStyle); - LLRect new_r = LLRect(rect.mLeft + ICON_PAD, - rect.mTop - TEXT_PAD, - rect.mRight, - rect.mTop - TEXT_PAD - font->getLineHeight()); - text_p.rect(new_r); - text_p.name(std::string(p.name)); - text_p.font(font); - text_p.visible(false); - text_p.parse_urls(true); - text_p.wrap(true); // allow multiline text. See EXT-7564, EXT-7047 - // set text padding the same as in People panel. EXT-7047, EXT-4837 - text_p.h_pad(STATUS_TEXT_HPAD); - text_p.v_pad(STATUS_TEXT_VPAD); - mStatusTextBox = LLUICtrlFactory::create (text_p); - mStatusTextBox->setFollowsLeft(); - mStatusTextBox->setFollowsTop(); - //addChild(mStatusTextBox); - - - // make the popup menu available - LLMenuGL* menu = LLUICtrlFactory::getInstance()->createFromFile("menu_inventory.xml", LLMenuGL::sMenuContainer, LLMenuHolderGL::child_registry_t::instance()); - if (!menu) - { - menu = LLUICtrlFactory::getDefaultWidget("inventory_menu"); - } - menu->setBackgroundColor(LLUIColorTable::instance().getColor("MenuPopupBgColor")); - mPopupMenuHandle = menu->getHandle(); - - mViewModelItem->openItem(); -} - -// Destroys the object -LLFolderView::~LLFolderView( void ) -{ - closeRenamer(); - - // The release focus call can potentially call the - // scrollcontainer, which can potentially be called with a partly - // destroyed scollcontainer. Just null it out here, and no worries - // about calling into the invalid scroll container. - // Same with the renamer. - mScrollContainer = NULL; - mRenameItem = NULL; - mRenamer = NULL; - mStatusTextBox = NULL; - - mAutoOpenItems.removeAllNodes(); - - if (mPopupMenuHandle.get()) mPopupMenuHandle.get()->die(); - - mAutoOpenItems.removeAllNodes(); - clearSelection(); - mItems.clear(); - mFolders.clear(); - - delete mViewModel; - mViewModel = NULL; -} - -BOOL LLFolderView::canFocusChildren() const -{ - return FALSE; -} - -BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) -{ - LLFolderViewFolder::addFolder(folder); - - // TODO RN: enforce sort order of My Inventory followed by Library - //mFolders.remove(folder); - //if (((LLFolderViewModelItemInventory*)folder->getViewModelItem())->getUUID() == gInventory.getLibraryRootFolderID()) - //{ - // mFolders.push_back(folder); - //} - //else - //{ - // mFolders.insert(mFolders.begin(), folder); - //} - - return TRUE; -} - -void LLFolderView::closeAllFolders() -{ - // Close all the folders - setOpenArrangeRecursively(FALSE, LLFolderViewFolder::RECURSE_DOWN); - arrangeAll(); -} - -void LLFolderView::openTopLevelFolders() -{ - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->setOpen(TRUE); - } -} - -// This view grows and shrinks to enclose all of its children items and folders. -// *width should be 0 -// conform show folder state works -S32 LLFolderView::arrange( S32* unused_width, S32* unused_height ) -{ - mMinWidth = 0; - S32 target_height; - - LLFolderViewFolder::arrange(&mMinWidth, &target_height); - - LLRect scroll_rect = mScrollContainer->getContentWindowRect(); - reshape( llmax(scroll_rect.getWidth(), mMinWidth), llround(mCurHeight) ); - - LLRect new_scroll_rect = mScrollContainer->getContentWindowRect(); - if (new_scroll_rect.getWidth() != scroll_rect.getWidth()) - { - reshape( llmax(scroll_rect.getWidth(), mMinWidth), llround(mCurHeight) ); - } - - // move item renamer text field to item's new position - updateRenamerPosition(); - - return llround(mTargetHeight); -} - -static LLFastTimer::DeclareTimer FTM_FILTER("Filter Folder View"); - -void LLFolderView::filter( LLFolderViewFilter& filter ) -{ - LLFastTimer t2(FTM_FILTER); - filter.setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); - - getViewModelItem()->filter(filter); -} - -void LLFolderView::reshape(S32 width, S32 height, BOOL called_from_parent) -{ - LLRect scroll_rect; - if (mScrollContainer) - { - LLView::reshape(width, height, called_from_parent); - scroll_rect = mScrollContainer->getContentWindowRect(); - } - width = llmax(mMinWidth, scroll_rect.getWidth()); - height = llmax(llround(mCurHeight), scroll_rect.getHeight()); - - // Restrict width within scroll container's width - if (mUseEllipses && mScrollContainer) - { - width = scroll_rect.getWidth(); - } - - LLView::reshape(width, height, called_from_parent); - mReshapeSignal(mSelectedItems, FALSE); -} - -void LLFolderView::addToSelectionList(LLFolderViewItem* item) -{ - if (item->isSelected()) - { - removeFromSelectionList(item); - } - if (mSelectedItems.size()) - { - mSelectedItems.back()->setIsCurSelection(FALSE); - } - item->setIsCurSelection(TRUE); - mSelectedItems.push_back(item); -} - -void LLFolderView::removeFromSelectionList(LLFolderViewItem* item) -{ - if (mSelectedItems.size()) - { - mSelectedItems.back()->setIsCurSelection(FALSE); - } - - selected_items_t::iterator item_iter; - for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end();) - { - if (*item_iter == item) - { - item_iter = mSelectedItems.erase(item_iter); - } - else - { - ++item_iter; - } - } - if (mSelectedItems.size()) - { - mSelectedItems.back()->setIsCurSelection(TRUE); - } -} - -LLFolderViewItem* LLFolderView::getCurSelectedItem( void ) -{ - if(mSelectedItems.size()) - { - LLFolderViewItem* itemp = mSelectedItems.back(); - llassert(itemp->getIsCurSelection()); - return itemp; - } - return NULL; -} - - -// Record the selected item and pass it down the hierachy. -BOOL LLFolderView::setSelection(LLFolderViewItem* selection, BOOL openitem, - BOOL take_keyboard_focus) -{ - mSignalSelectCallback = take_keyboard_focus ? SIGNAL_KEYBOARD_FOCUS : SIGNAL_NO_KEYBOARD_FOCUS; - - if( selection == this ) - { - return FALSE; - } - - if( selection && take_keyboard_focus) - { - mParentPanel->setFocus(TRUE); - } - - // clear selection down here because change of keyboard focus can potentially - // affect selection - clearSelection(); - - if(selection) - { - addToSelectionList(selection); - } - - BOOL rv = LLFolderViewFolder::setSelection(selection, openitem, take_keyboard_focus); - if(openitem && selection) - { - selection->getParentFolder()->requestArrange(); - } - - llassert(mSelectedItems.size() <= 1); - - return rv; -} - -BOOL LLFolderView::changeSelection(LLFolderViewItem* selection, BOOL selected) -{ - BOOL rv = FALSE; - - // can't select root folder - if(!selection || selection == this) - { - return FALSE; - } - - if (!mAllowMultiSelect) - { - clearSelection(); - } - - selected_items_t::iterator item_iter; - for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end(); ++item_iter) - { - if (*item_iter == selection) - { - break; - } - } - - BOOL on_list = (item_iter != mSelectedItems.end()); - - if(selected && !on_list) - { - addToSelectionList(selection); - } - if(!selected && on_list) - { - removeFromSelectionList(selection); - } - - rv = LLFolderViewFolder::changeSelection(selection, selected); - - mSignalSelectCallback = SIGNAL_KEYBOARD_FOCUS; - - return rv; -} - -static LLFastTimer::DeclareTimer FTM_SANITIZE_SELECTION("Sanitize Selection"); -void LLFolderView::sanitizeSelection() -{ - LLFastTimer _(FTM_SANITIZE_SELECTION); - // store off current item in case it is automatically deselected - // and we want to preserve context - LLFolderViewItem* original_selected_item = getCurSelectedItem(); - - std::vector items_to_remove; - selected_items_t::iterator item_iter; - for (item_iter = mSelectedItems.begin(); item_iter != mSelectedItems.end(); ++item_iter) - { - LLFolderViewItem* item = *item_iter; - - // ensure that each ancestor is open and potentially passes filtering - BOOL visible = item->getViewModelItem()->potentiallyVisible(); // initialize from filter state for this item - // modify with parent open and filters states - LLFolderViewFolder* parent_folder = item->getParentFolder(); - // Move up through parent folders and see what's visible - while(parent_folder) - { - visible = visible && parent_folder->isOpen() && parent_folder->getViewModelItem()->potentiallyVisible(); - parent_folder = parent_folder->getParentFolder(); - } - - // deselect item if any ancestor is closed or didn't pass filter requirements. - if (!visible) - { - items_to_remove.push_back(item); - } - - // disallow nested selections (i.e. folder items plus one or more ancestors) - // could check cached mum selections count and only iterate if there are any - // but that may be a premature optimization. - selected_items_t::iterator other_item_iter; - for (other_item_iter = mSelectedItems.begin(); other_item_iter != mSelectedItems.end(); ++other_item_iter) - { - LLFolderViewItem* other_item = *other_item_iter; - for( parent_folder = other_item->getParentFolder(); parent_folder; parent_folder = parent_folder->getParentFolder()) - { - if (parent_folder == item) - { - // this is a descendent of the current folder, remove from list - items_to_remove.push_back(other_item); - break; - } - } - } - - // Don't allow invisible items (such as root folders) to be selected. - if (item == getRoot()) - { - items_to_remove.push_back(item); - } - } - - std::vector::iterator item_it; - for (item_it = items_to_remove.begin(); item_it != items_to_remove.end(); ++item_it ) - { - changeSelection(*item_it, FALSE); // toggle selection (also removes from list) - } - - // if nothing selected after prior constraints... - if (mSelectedItems.empty()) - { - // ...select first available parent of original selection - LLFolderViewItem* new_selection = NULL; - if (original_selected_item) - { - for(LLFolderViewFolder* parent_folder = original_selected_item->getParentFolder(); - parent_folder; - parent_folder = parent_folder->getParentFolder()) - { - if (parent_folder->getViewModelItem()->potentiallyVisible()) - { - // give initial selection to first ancestor folder that potentially passes the filter - if (!new_selection) - { - new_selection = parent_folder; - } - - // if any ancestor folder of original item is closed, move the selection up - // to the highest closed - if (!parent_folder->isOpen()) - { - new_selection = parent_folder; - } - } - } - } - else - { - new_selection = NULL; - } - - if (new_selection) - { - setSelection(new_selection, FALSE, FALSE); - } - } -} - -void LLFolderView::clearSelection() -{ - for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); - item_it != mSelectedItems.end(); - ++item_it) - { - (*item_it)->setUnselected(); - } - - mSelectedItems.clear(); -} - -std::set LLFolderView::getSelectionList() const -{ - std::set selection; - std::copy(mSelectedItems.begin(), mSelectedItems.end(), std::inserter(selection, selection.begin())); - return selection; -} - -BOOL LLFolderView::startDrag(LLToolDragAndDrop::ESource source) -{ - std::vector types; - uuid_vec_t cargo_ids; - selected_items_t::iterator item_it; - BOOL can_drag = TRUE; - if (!mSelectedItems.empty()) - { - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - EDragAndDropType type = DAD_NONE; - LLUUID id = LLUUID::null; - can_drag = can_drag && (*item_it)->getViewModelItem()->startDrag(&type, &id); - - types.push_back(type); - cargo_ids.push_back(id); - } - - LLToolDragAndDrop::getInstance()->beginMultiDrag(types, cargo_ids, source, mSourceID); - } - return can_drag; -} - -void LLFolderView::commitRename( const LLSD& data ) -{ - finishRenamingItem(); -} - -void LLFolderView::draw() -{ - //LLFontGL* font = getLabelFontForStyle(mLabelStyle); - - // if cursor has moved off of me during drag and drop - // close all auto opened folders - if (!mDragAndDropThisFrame) - { - closeAutoOpenedFolders(); - } - - // while dragging, update selection rendering to reflect single/multi drag status - if (LLToolDragAndDrop::getInstance()->hasMouseCapture()) - { - EAcceptance last_accept = LLToolDragAndDrop::getInstance()->getLastAccept(); - if (last_accept == ACCEPT_YES_SINGLE || last_accept == ACCEPT_YES_COPY_SINGLE) - { - setShowSingleSelection(TRUE); - } - else - { - setShowSingleSelection(FALSE); - } - } - else - { - setShowSingleSelection(FALSE); - } - - - if (mSearchTimer.getElapsedTimeF32() > LLUI::sSettingGroups["config"]->getF32("TypeAheadTimeout") || !mSearchString.size()) - { - mSearchString.clear(); - } - - if (hasVisibleChildren()) - { - mStatusTextBox->setVisible( FALSE ); - } - else if (mShowEmptyMessage) - { - mStatusTextBox->setValue(getFolderViewModel()->getStatusText()); - mStatusTextBox->setVisible( TRUE ); - - // firstly reshape message textbox with current size. This is necessary to - // LLTextBox::getTextPixelHeight works properly - const LLRect local_rect = getLocalRect(); - mStatusTextBox->setShape(local_rect); - - // get preferable text height... - S32 pixel_height = mStatusTextBox->getTextPixelHeight(); - bool height_changed = local_rect.getHeight() != pixel_height; - if (height_changed) - { - // ... if it does not match current height, lets rearrange current view. - // This will indirectly call ::arrange and reshape of the status textbox. - // We should call this method to also notify parent about required rect. - // See EXT-7564, EXT-7047. - S32 height = 0; - S32 width = 0; - S32 total_height = arrange( &width, &height ); - notifyParent(LLSD().with("action", "size_changes").with("height", total_height)); - - LLUI::popMatrix(); - LLUI::pushMatrix(); - LLUI::translate((F32)getRect().mLeft, (F32)getRect().mBottom); - } - } - - // skip over LLFolderViewFolder::draw since we don't want the folder icon, label, - // and arrow for the root folder - LLView::draw(); - - mDragAndDropThisFrame = FALSE; -} - -void LLFolderView::finishRenamingItem( void ) -{ - if(!mRenamer) - { - return; - } - if( mRenameItem ) - { - mRenameItem->rename( mRenamer->getText() ); - } - - closeRenamer(); - - // List is re-sorted alphabetically, so scroll to make sure the selected item is visible. - scrollToShowSelection(); -} - -void LLFolderView::closeRenamer( void ) -{ - if (mRenamer && mRenamer->getVisible()) - { - // Triggers onRenamerLost() that actually closes the renamer. - LLUI::removePopup(mRenamer); - } -} - -bool isDescendantOfASelectedItem(LLFolderViewItem* item, const std::vector& selectedItems) -{ - LLFolderViewItem* item_parent = dynamic_cast(item->getParent()); - - if (item_parent) - { - for(std::vector::const_iterator it = selectedItems.begin(); it != selectedItems.end(); ++it) - { - const LLFolderViewItem* const selected_item = (*it); - - LLFolderViewItem* parent = item_parent; - - while (parent) - { - if (selected_item == parent) - { - return true; - } - - parent = dynamic_cast(parent->getParent()); - } - } - } - - return false; -} - -void LLFolderView::removeSelectedItems() -{ - if(getVisible() && getEnabled()) - { - // just in case we're removing the renaming item. - mRenameItem = NULL; - - // create a temporary structure which we will use to remove - // items, since the removal will futz with internal data - // structures. - std::vector items; - S32 count = mSelectedItems.size(); - if(count == 0) return; - LLFolderViewItem* item = NULL; - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - item = *item_it; - if (item && item->isRemovable()) - { - items.push_back(item); - } - else - { - llinfos << "Cannot delete " << item->getName() << llendl; - return; - } - } - - // iterate through the new container. - count = items.size(); - LLUUID new_selection_id; - if(count == 1) - { - LLFolderViewItem* item_to_delete = items[0]; - LLFolderViewFolder* parent = item_to_delete->getParentFolder(); - LLFolderViewItem* new_selection = item_to_delete->getNextOpenNode(FALSE); - if (!new_selection) - { - new_selection = item_to_delete->getPreviousOpenNode(FALSE); - } - if(parent) - { - if (item_to_delete->remove()) - { - // change selection on successful delete - if (new_selection) - { - getRoot()->setSelection(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); - } - else - { - getRoot()->setSelection(NULL, mParentPanel->hasFocus()); - } - } - } - arrangeAll(); - } - else if (count > 1) - { - LLDynamicArray listeners; - LLFolderViewModelItem* listener; - LLFolderViewItem* last_item = items[count - 1]; - LLFolderViewItem* new_selection = last_item->getNextOpenNode(FALSE); - while(new_selection && new_selection->isSelected()) - { - new_selection = new_selection->getNextOpenNode(FALSE); - } - if (!new_selection) - { - new_selection = last_item->getPreviousOpenNode(FALSE); - while (new_selection && (new_selection->isSelected() || isDescendantOfASelectedItem(new_selection, items))) - { - new_selection = new_selection->getPreviousOpenNode(FALSE); - } - } - if (new_selection) - { - getRoot()->setSelection(new_selection, new_selection->isOpen(), mParentPanel->hasFocus()); - } - else - { - getRoot()->setSelection(NULL, mParentPanel->hasFocus()); - } - - for(S32 i = 0; i < count; ++i) - { - listener = items[i]->getViewModelItem(); - if(listener && (listeners.find(listener) == LLDynamicArray::FAIL)) - { - listeners.put(listener); - } - } - listener = static_cast(listeners.get(0)); - if(listener) - { - listener->removeBatch(listeners); - } - } - arrangeAll(); - scrollToShowSelection(); - } -} - -// TODO RN: abstract -// open the selected item. -void LLFolderView::openSelectedItems( void ) -{ - //TODO RN: get working again - //if(getVisible() && getEnabled()) - //{ - // if (mSelectedItems.size() == 1) - // { - // mSelectedItems.front()->openItem(); - // } - // else - // { - // LLMultiPreview* multi_previewp = new LLMultiPreview(); - // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); - - // selected_items_t::iterator item_it; - // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - // { - // // IT_{OBJECT,ATTACHMENT} creates LLProperties - // // floaters; others create LLPreviews. Put - // // each one in the right type of container. - // LLFolderViewModelItemInventory* listener = static_cast((*item_it)->getViewModelItem()); - // bool is_prop = listener && (listener->getInventoryType() == LLInventoryType::IT_OBJECT || listener->getInventoryType() == LLInventoryType::IT_ATTACHMENT); - // if (is_prop) - // LLFloater::setFloaterHost(multi_propertiesp); - // else - // LLFloater::setFloaterHost(multi_previewp); - // listener->openItem(); - // } - - // LLFloater::setFloaterHost(NULL); - // // *NOTE: LLMulti* will safely auto-delete when open'd - // // without any children. - // multi_previewp->openFloater(LLSD()); - // multi_propertiesp->openFloater(LLSD()); - // } - //} -} - -void LLFolderView::propertiesSelectedItems( void ) -{ - //TODO RN: get working again - //if(getVisible() && getEnabled()) - //{ - // if (mSelectedItems.size() == 1) - // { - // LLFolderViewItem* folder_item = mSelectedItems.front(); - // if(!folder_item) return; - // folder_item->getViewModelItem()->showProperties(); - // } - // else - // { - // LLMultiProperties* multi_propertiesp = new LLMultiProperties(); - - // LLFloater::setFloaterHost(multi_propertiesp); - - // selected_items_t::iterator item_it; - // for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - // { - // (*item_it)->getViewModelItem()->showProperties(); - // } - - // LLFloater::setFloaterHost(NULL); - // multi_propertiesp->openFloater(LLSD()); - // } - //} -} - - -void LLFolderView::autoOpenItem( LLFolderViewFolder* item ) -{ - if ((mAutoOpenItems.check() == item) || - (mAutoOpenItems.getDepth() >= (U32)AUTO_OPEN_STACK_DEPTH) || - item->isOpen()) - { - return; - } - - // close auto-opened folders - LLFolderViewFolder* close_item = mAutoOpenItems.check(); - while (close_item && close_item != item->getParentFolder()) - { - mAutoOpenItems.pop(); - close_item->setOpenArrangeRecursively(FALSE); - close_item = mAutoOpenItems.check(); - } - - item->requestArrange(); - - mAutoOpenItems.push(item); - - item->setOpen(TRUE); - LLRect content_rect = mScrollContainer->getContentWindowRect(); - LLRect constraint_rect(0,content_rect.getHeight(), content_rect.getWidth(), 0); - scrollToShowItem(item, constraint_rect); -} - -void LLFolderView::closeAutoOpenedFolders() -{ - while (mAutoOpenItems.check()) - { - LLFolderViewFolder* close_item = mAutoOpenItems.pop(); - close_item->setOpen(FALSE); - } - - if (mAutoOpenCandidate) - { - mAutoOpenCandidate->setAutoOpenCountdown(0.f); - } - mAutoOpenCandidate = NULL; - mAutoOpenTimer.stop(); -} - -BOOL LLFolderView::autoOpenTest(LLFolderViewFolder* folder) -{ - if (folder && mAutoOpenCandidate == folder) - { - if (mAutoOpenTimer.getStarted()) - { - if (!mAutoOpenCandidate->isOpen()) - { - mAutoOpenCandidate->setAutoOpenCountdown(clamp_rescale(mAutoOpenTimer.getElapsedTimeF32(), 0.f, sAutoOpenTime, 0.f, 1.f)); - } - if (mAutoOpenTimer.getElapsedTimeF32() > sAutoOpenTime) - { - autoOpenItem(folder); - mAutoOpenTimer.stop(); - return TRUE; - } - } - return FALSE; - } - - // otherwise new candidate, restart timer - if (mAutoOpenCandidate) - { - mAutoOpenCandidate->setAutoOpenCountdown(0.f); - } - mAutoOpenCandidate = folder; - mAutoOpenTimer.start(); - return FALSE; -} - -BOOL LLFolderView::canCopy() const -{ - if (!(getVisible() && getEnabled() && (mSelectedItems.size() > 0))) - { - return FALSE; - } - - for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) - { - const LLFolderViewItem* item = *selected_it; - if (!item->getViewModelItem()->isItemCopyable()) - { - return FALSE; - } - } - return TRUE; -} - -// copy selected item -void LLFolderView::copy() -{ - // *NOTE: total hack to clear the inventory clipboard - LLClipboard::instance().reset(); - S32 count = mSelectedItems.size(); - if(getVisible() && getEnabled() && (count > 0)) - { - LLFolderViewModelItem* listener = NULL; - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - listener = (*item_it)->getViewModelItem(); - if(listener) - { - listener->copyToClipboard(); - } - } - } - mSearchString.clear(); -} - -BOOL LLFolderView::canCut() const -{ - if (!(getVisible() && getEnabled() && (mSelectedItems.size() > 0))) - { - return FALSE; - } - - for (selected_items_t::const_iterator selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) - { - const LLFolderViewItem* item = *selected_it; - const LLFolderViewModelItem* listener = item->getViewModelItem(); - - if (!listener || !listener->isItemRemovable()) - { - return FALSE; - } - } - return TRUE; -} - -void LLFolderView::cut() -{ - // clear the inventory clipboard - LLClipboard::instance().reset(); - S32 count = mSelectedItems.size(); - if(getVisible() && getEnabled() && (count > 0)) - { - LLFolderViewModelItem* listener = NULL; - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - listener = (*item_it)->getViewModelItem(); - if(listener) - { - listener->cutToClipboard(); - listener->removeItem(); - } - } - } - mSearchString.clear(); -} - -BOOL LLFolderView::canPaste() const -{ - if (mSelectedItems.empty()) - { - return FALSE; - } - - if(getVisible() && getEnabled()) - { - for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); - item_it != mSelectedItems.end(); ++item_it) - { - // *TODO: only check folders and parent folders of items - const LLFolderViewItem* item = (*item_it); - const LLFolderViewModelItem* listener = item->getViewModelItem(); - if(!listener || !listener->isClipboardPasteable()) - { - const LLFolderViewFolder* folderp = item->getParentFolder(); - listener = folderp->getViewModelItem(); - if (!listener || !listener->isClipboardPasteable()) - { - return FALSE; - } - } - } - return TRUE; - } - return FALSE; -} - -// paste selected item -void LLFolderView::paste() -{ - if(getVisible() && getEnabled()) - { - // find set of unique folders to paste into - std::set folder_set; - - selected_items_t::iterator selected_it; - for (selected_it = mSelectedItems.begin(); selected_it != mSelectedItems.end(); ++selected_it) - { - LLFolderViewItem* item = *selected_it; - LLFolderViewFolder* folder = dynamic_cast(item); - if (folder == NULL) - { - item = item->getParentFolder(); - } - folder_set.insert(folder); - } - - std::set::iterator set_iter; - for(set_iter = folder_set.begin(); set_iter != folder_set.end(); ++set_iter) - { - LLFolderViewModelItem* listener = (*set_iter)->getViewModelItem(); - if(listener && listener->isClipboardPasteable()) - { - listener->pasteFromClipboard(); - } - } - } - mSearchString.clear(); -} - -// public rename functionality - can only start the process -void LLFolderView::startRenamingSelectedItem( void ) -{ - // make sure selection is visible - scrollToShowSelection(); - - S32 count = mSelectedItems.size(); - LLFolderViewItem* item = NULL; - if(count > 0) - { - item = mSelectedItems.front(); - } - if(getVisible() && getEnabled() && (count == 1) && item && item->getViewModelItem() && - item->getViewModelItem()->isItemRenameable()) - { - mRenameItem = item; - - updateRenamerPosition(); - - - mRenamer->setText(item->getName()); - mRenamer->selectAll(); - mRenamer->setVisible( TRUE ); - // set focus will fail unless item is visible - mRenamer->setFocus( TRUE ); - mRenamer->setTopLostCallback(boost::bind(&LLFolderView::onRenamerLost, this)); - LLUI::addPopup(mRenamer); - } -} - -BOOL LLFolderView::handleKeyHere( KEY key, MASK mask ) -{ - BOOL handled = FALSE; - - // SL-51858: Key presses are not being passed to the Popup menu. - // A proper fix is non-trivial so instead just close the menu. - LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); - if (menu && menu->isOpen()) - { - LLMenuGL::sMenuContainer->hideMenus(); - } - - LLView *item = NULL; - if (getChildCount() > 0) - { - item = *(getChildList()->begin()); - } - - switch( key ) - { - case KEY_F2: - mSearchString.clear(); - startRenamingSelectedItem(); - handled = TRUE; - break; - - case KEY_RETURN: - if (mask == MASK_NONE) - { - if( mRenameItem && mRenamer->getVisible() ) - { - finishRenamingItem(); - mSearchString.clear(); - handled = TRUE; - } - else - { - LLFolderView::openSelectedItems(); - handled = TRUE; - } - } - break; - - case KEY_ESCAPE: - if( mRenameItem && mRenamer->getVisible() ) - { - closeRenamer(); - handled = TRUE; - } - mSearchString.clear(); - break; - - case KEY_PAGE_UP: - mSearchString.clear(); - mScrollContainer->pageUp(30); - handled = TRUE; - break; - - case KEY_PAGE_DOWN: - mSearchString.clear(); - mScrollContainer->pageDown(30); - handled = TRUE; - break; - - case KEY_HOME: - mSearchString.clear(); - mScrollContainer->goToTop(); - handled = TRUE; - break; - - case KEY_END: - mSearchString.clear(); - mScrollContainer->goToBottom(); - break; - - case KEY_DOWN: - if((mSelectedItems.size() > 0) && mScrollContainer) - { - LLFolderViewItem* last_selected = getCurSelectedItem(); - - if (!mKeyboardSelection) - { - setSelection(last_selected, FALSE, TRUE); - mKeyboardSelection = TRUE; - } - - LLFolderViewItem* next = NULL; - if (mask & MASK_SHIFT) - { - // don't shift select down to children of folders (they are implicitly selected through parent) - next = last_selected->getNextOpenNode(FALSE); - if (next) - { - if (next->isSelected()) - { - // shrink selection - getRoot()->changeSelection(last_selected, FALSE); - } - else if (last_selected->getParentFolder() == next->getParentFolder()) - { - // grow selection - getRoot()->changeSelection(next, TRUE); - } - } - } - else - { - next = last_selected->getNextOpenNode(); - if( next ) - { - if (next == last_selected) - { - //special case for LLAccordionCtrl - if(notifyParent(LLSD().with("action","select_next")) > 0 )//message was processed - { - clearSelection(); - return TRUE; - } - return FALSE; - } - setSelection( next, FALSE, TRUE ); - } - else - { - //special case for LLAccordionCtrl - if(notifyParent(LLSD().with("action","select_next")) > 0 )//message was processed - { - clearSelection(); - return TRUE; - } - return FALSE; - } - } - scrollToShowSelection(); - mSearchString.clear(); - handled = TRUE; - } - break; - - case KEY_UP: - if((mSelectedItems.size() > 0) && mScrollContainer) - { - LLFolderViewItem* last_selected = mSelectedItems.back(); - - if (!mKeyboardSelection) - { - setSelection(last_selected, FALSE, TRUE); - mKeyboardSelection = TRUE; - } - - LLFolderViewItem* prev = NULL; - if (mask & MASK_SHIFT) - { - // don't shift select down to children of folders (they are implicitly selected through parent) - prev = last_selected->getPreviousOpenNode(FALSE); - if (prev) - { - if (prev->isSelected()) - { - // shrink selection - getRoot()->changeSelection(last_selected, FALSE); - } - else if (last_selected->getParentFolder() == prev->getParentFolder()) - { - // grow selection - getRoot()->changeSelection(prev, TRUE); - } - } - } - else - { - prev = last_selected->getPreviousOpenNode(); - if( prev ) - { - if (prev == this) - { - // If case we are in accordion tab notify parent to go to the previous accordion - if(notifyParent(LLSD().with("action","select_prev")) > 0 )//message was processed - { - clearSelection(); - return TRUE; - } - - return FALSE; - } - setSelection( prev, FALSE, TRUE ); - } - } - scrollToShowSelection(); - mSearchString.clear(); - - handled = TRUE; - } - break; - - case KEY_RIGHT: - if(mSelectedItems.size()) - { - LLFolderViewItem* last_selected = getCurSelectedItem(); - last_selected->setOpen( TRUE ); - mSearchString.clear(); - handled = TRUE; - } - break; - - case KEY_LEFT: - if(mSelectedItems.size()) - { - LLFolderViewItem* last_selected = getCurSelectedItem(); - LLFolderViewItem* parent_folder = last_selected->getParentFolder(); - if (!last_selected->isOpen() && parent_folder && parent_folder->getParentFolder()) - { - setSelection(parent_folder, FALSE, TRUE); - } - else - { - last_selected->setOpen( FALSE ); - } - mSearchString.clear(); - scrollToShowSelection(); - handled = TRUE; - } - break; - } - - if (!handled && mParentPanel->hasFocus()) - { - if (key == KEY_BACKSPACE) - { - mSearchTimer.reset(); - if (mSearchString.size()) - { - mSearchString.erase(mSearchString.size() - 1, 1); - } - search(getCurSelectedItem(), mSearchString, FALSE); - handled = TRUE; - } - } - - return handled; -} - - -BOOL LLFolderView::handleUnicodeCharHere(llwchar uni_char) -{ - if ((uni_char < 0x20) || (uni_char == 0x7F)) // Control character or DEL - { - return FALSE; - } - - if (uni_char > 0x7f) - { - llwarns << "LLFolderView::handleUnicodeCharHere - Don't handle non-ascii yet, aborting" << llendl; - return FALSE; - } - - BOOL handled = FALSE; - if (mParentPanel->hasFocus()) - { - // SL-51858: Key presses are not being passed to the Popup menu. - // A proper fix is non-trivial so instead just close the menu. - LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); - if (menu && menu->isOpen()) - { - LLMenuGL::sMenuContainer->hideMenus(); - } - - //do text search - if (mSearchTimer.getElapsedTimeF32() > LLUI::sSettingGroups["config"]->getF32("TypeAheadTimeout")) - { - mSearchString.clear(); - } - mSearchTimer.reset(); - if (mSearchString.size() < 128) - { - mSearchString += uni_char; - } - search(getCurSelectedItem(), mSearchString, FALSE); - - handled = TRUE; - } - - return handled; -} - - -BOOL LLFolderView::canDoDelete() const -{ - if (mSelectedItems.size() == 0) return FALSE; - - for (selected_items_t::const_iterator item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - if (!(*item_it)->getViewModelItem()->isItemRemovable()) - { - return FALSE; - } - } - return TRUE; -} - -void LLFolderView::doDelete() -{ - if(mSelectedItems.size() > 0) - { - removeSelectedItems(); - } -} - - -BOOL LLFolderView::handleMouseDown( S32 x, S32 y, MASK mask ) -{ - mKeyboardSelection = FALSE; - mSearchString.clear(); - - mParentPanel->setFocus(TRUE); - - LLEditMenuHandler::gEditMenuHandler = this; - - return LLView::handleMouseDown( x, y, mask ); -} - -BOOL LLFolderView::search(LLFolderViewItem* first_item, const std::string &search_string, BOOL backward) -{ - // get first selected item - LLFolderViewItem* search_item = first_item; - - // make sure search string is upper case - std::string upper_case_string = search_string; - LLStringUtil::toUpper(upper_case_string); - - // if nothing selected, select first item in folder - if (!search_item) - { - // start from first item - search_item = getNextFromChild(NULL); - } - - // search over all open nodes for first substring match (with wrapping) - BOOL found = FALSE; - LLFolderViewItem* original_search_item = search_item; - do - { - // wrap at end - if (!search_item) - { - if (backward) - { - search_item = getPreviousFromChild(NULL); - } - else - { - search_item = getNextFromChild(NULL); - } - if (!search_item || search_item == original_search_item) - { - break; - } - } - - const std::string current_item_label(search_item->getViewModelItem()->getSearchableName()); - S32 search_string_length = llmin(upper_case_string.size(), current_item_label.size()); - if (!current_item_label.compare(0, search_string_length, upper_case_string)) - { - found = TRUE; - break; - } - if (backward) - { - search_item = search_item->getPreviousOpenNode(); - } - else - { - search_item = search_item->getNextOpenNode(); - } - - } while(search_item != original_search_item); - - - if (found) - { - setSelection(search_item, FALSE, TRUE); - scrollToShowSelection(); - } - - return found; -} - -BOOL LLFolderView::handleDoubleClick( S32 x, S32 y, MASK mask ) -{ - // skip LLFolderViewFolder::handleDoubleClick() - return LLView::handleDoubleClick( x, y, mask ); -} - -BOOL LLFolderView::handleRightMouseDown( S32 x, S32 y, MASK mask ) -{ - // all user operations move keyboard focus to inventory - // this way, we know when to stop auto-updating a search - mParentPanel->setFocus(TRUE); - - BOOL handled = childrenHandleRightMouseDown(x, y, mask) != NULL; - S32 count = mSelectedItems.size(); - LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); - if ( handled - && ( count > 0 && (hasVisibleChildren()) ) // show menu only if selected items are visible - && menu ) - { - if (mCallbackRegistrar) - mCallbackRegistrar->pushScope(); - - updateMenuOptions(menu); - - menu->updateParent(LLMenuGL::sMenuContainer); - LLMenuGL::showPopup(this, menu, x, y); - if (mCallbackRegistrar) - mCallbackRegistrar->popScope(); - } - else - { - if (menu && menu->getVisible()) - { - menu->setVisible(FALSE); - } - setSelection(NULL, FALSE, TRUE); - } - return handled; -} - -// Add "--no options--" if the menu is completely blank. -BOOL LLFolderView::addNoOptions(LLMenuGL* menu) const -{ - const std::string nooptions_str = "--no options--"; - LLView *nooptions_item = NULL; - - const LLView::child_list_t *list = menu->getChildList(); - for (LLView::child_list_t::const_iterator itor = list->begin(); - itor != list->end(); - ++itor) - { - LLView *menu_item = (*itor); - if (menu_item->getVisible()) - { - return FALSE; - } - std::string name = menu_item->getName(); - if (menu_item->getName() == nooptions_str) - { - nooptions_item = menu_item; - } - } - if (nooptions_item) - { - nooptions_item->setVisible(TRUE); - nooptions_item->setEnabled(FALSE); - return TRUE; - } - return FALSE; -} - -BOOL LLFolderView::handleHover( S32 x, S32 y, MASK mask ) -{ - return LLView::handleHover( x, y, mask ); -} - -BOOL LLFolderView::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg) -{ - mDragAndDropThisFrame = TRUE; - // have children handle it first - BOOL handled = LLView::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, - accept, tooltip_msg); - - // when drop is not handled by child, it should be handled - // by the folder which is the hierarchy root. - if (!handled) - { - handled = LLFolderViewFolder::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg); - } - - return handled; -} - -void LLFolderView::deleteAllChildren() -{ - closeRenamer(); - if (mPopupMenuHandle.get()) mPopupMenuHandle.get()->die(); - mPopupMenuHandle = LLHandle(); - mScrollContainer = NULL; - mRenameItem = NULL; - mRenamer = NULL; - mStatusTextBox = NULL; - - clearSelection(); - LLView::deleteAllChildren(); -} - -void LLFolderView::scrollToShowSelection() -{ - if ( mSelectedItems.size() ) - { - mNeedsScroll = TRUE; - } -} - -// If the parent is scroll container, scroll it to make the selection -// is maximally visible. -void LLFolderView::scrollToShowItem(LLFolderViewItem* item, const LLRect& constraint_rect) -{ - if (!mScrollContainer) return; - - // don't scroll to items when mouse is being used to scroll/drag and drop - if (gFocusMgr.childHasMouseCapture(mScrollContainer)) - { - mNeedsScroll = FALSE; - return; - } - - // if item exists and is in visible portion of parent folder... - if(item) - { - LLRect local_rect = item->getLocalRect(); - LLRect item_scrolled_rect; // item position relative to display area of scroller - LLRect visible_doc_rect = mScrollContainer->getVisibleContentRect(); - - S32 icon_height = mIcon.isNull() ? 0 : mIcon->getHeight(); - S32 label_height = getLabelFontForStyle(mLabelStyle)->getLineHeight(); - // when navigating with keyboard, only move top of opened folder on screen, otherwise show whole folder - S32 max_height_to_show = item->isOpen() && mScrollContainer->hasFocus() ? (llmax( icon_height, label_height ) + ICON_PAD) : local_rect.getHeight(); - - // get portion of item that we want to see... - LLRect item_local_rect = LLRect(item->getIndentation(), - local_rect.getHeight(), - llmin(MIN_ITEM_WIDTH_VISIBLE, local_rect.getWidth()), - llmax(0, local_rect.getHeight() - max_height_to_show)); - - LLRect item_doc_rect; - - item->localRectToOtherView(item_local_rect, &item_doc_rect, this); - - mScrollContainer->scrollToShowRect( item_doc_rect, constraint_rect ); - - } -} - -LLRect LLFolderView::getVisibleRect() -{ - S32 visible_height = mScrollContainer->getRect().getHeight(); - S32 visible_width = mScrollContainer->getRect().getWidth(); - LLRect visible_rect; - visible_rect.setLeftTopAndSize(-getRect().mLeft, visible_height - getRect().mBottom, visible_width, visible_height); - return visible_rect; -} - -BOOL LLFolderView::getShowSelectionContext() -{ - if (mShowSelectionContext) - { - return TRUE; - } - LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); - if (menu && menu->getVisible()) - { - return TRUE; - } - return FALSE; -} - -void LLFolderView::setShowSingleSelection(BOOL show) -{ - if (show != mShowSingleSelection) - { - mMultiSelectionFadeTimer.reset(); - mShowSingleSelection = show; - } -} - -static LLFastTimer::DeclareTimer FTM_AUTO_SELECT("Open and Select"); -static LLFastTimer::DeclareTimer FTM_INVENTORY("Inventory"); - -// Main idle routine -void LLFolderView::update() -{ - // If this is associated with the user's inventory, don't do anything - // until that inventory is loaded up. - LLFastTimer t2(FTM_INVENTORY); - - if (getFolderViewModel()->getFilter()->isModified() && getFolderViewModel()->getFilter()->isNotDefault()) - { - mNeedsAutoSelect = TRUE; - } - getFolderViewModel()->getFilter()->clearModified(); - - // filter to determine visibility before arranging - filter(*(getFolderViewModel()->getFilter())); - - // automatically show matching items, and select first one if we had a selection - if (mNeedsAutoSelect) - { - LLFastTimer t3(FTM_AUTO_SELECT); - // select new item only if a filtered item not currently selected - LLFolderViewItem* selected_itemp = mSelectedItems.empty() ? NULL : mSelectedItems.back(); - if (!mAutoSelectOverride && (!selected_itemp || !selected_itemp->getViewModelItem()->potentiallyVisible())) - { - // these are named variables to get around gcc not binding non-const references to rvalues - // and functor application is inherently non-const to allow for stateful functors - LLSelectFirstFilteredItem functor; - applyFunctorRecursively(functor); - } - - // Open filtered folders for folder views with mAutoSelectOverride=TRUE. - // Used by LLPlacesFolderView. - if (getFolderViewModel()->getFilter()->showAllResults()) - { - // these are named variables to get around gcc not binding non-const references to rvalues - // and functor application is inherently non-const to allow for stateful functors - LLOpenFilteredFolders functor; - applyFunctorRecursively(functor); - } - - scrollToShowSelection(); - } - - BOOL filter_finished = getViewModelItem()->passedFilter() - && mViewModel->contentsReady(); - if (filter_finished - || gFocusMgr.childHasKeyboardFocus(getParent()) // assume we are inside a scroll container - || gFocusMgr.childHasMouseCapture(getParent())) - { - // finishing the filter process, giving focus to the folder view, or dragging the scrollbar all stop the auto select process - mNeedsAutoSelect = FALSE; - } - - - // during filtering process, try to pin selected item's location on screen - // this will happen when searching your inventory and when new items arrive - if (!filter_finished) - { - // calculate rectangle to pin item to at start of animated rearrange - if (!mPinningSelectedItem && !mSelectedItems.empty()) - { - // lets pin it! - mPinningSelectedItem = TRUE; - - LLRect visible_content_rect = mScrollContainer->getVisibleContentRect(); - LLFolderViewItem* selected_item = mSelectedItems.back(); - - LLRect item_rect; - selected_item->localRectToOtherView(selected_item->getLocalRect(), &item_rect, this); - // if item is visible in scrolled region - if (visible_content_rect.overlaps(item_rect)) - { - // then attempt to keep it in same place on screen - mScrollConstraintRect = item_rect; - mScrollConstraintRect.translate(-visible_content_rect.mLeft, -visible_content_rect.mBottom); - } - else - { - // otherwise we just want it onscreen somewhere - LLRect content_rect = mScrollContainer->getContentWindowRect(); - mScrollConstraintRect.setOriginAndSize(0, 0, content_rect.getWidth(), content_rect.getHeight()); - } - } - } - else - { - // stop pinning selected item after folders stop rearranging - if (!needsArrange()) - { - mPinningSelectedItem = FALSE; - } - } - - LLRect constraint_rect; - if (mPinningSelectedItem) - { - // use last known constraint rect for pinned item - constraint_rect = mScrollConstraintRect; - } - else - { - // during normal use (page up/page down, etc), just try to fit item on screen - LLRect content_rect = mScrollContainer->getContentWindowRect(); - constraint_rect.setOriginAndSize(0, 0, content_rect.getWidth(), content_rect.getHeight()); - } - - BOOL is_visible = isInVisibleChain(); - - if ( is_visible ) - { - sanitizeSelection(); - if( needsArrange() ) - { - S32 height = 0; - S32 width = 0; - S32 total_height = arrange( &width, &height ); - notifyParent(LLSD().with("action", "size_changes").with("height", total_height)); - } - } - - if (mSelectedItems.size() && mNeedsScroll) - { - scrollToShowItem(mSelectedItems.back(), constraint_rect); - // continue scrolling until animated layout change is done - if (filter_finished - && (!needsArrange() || !is_visible)) - { - mNeedsScroll = FALSE; - } - } - - if (mSignalSelectCallback) - { - //RN: we use keyboard focus as a proxy for user-explicit actions - BOOL take_keyboard_focus = (mSignalSelectCallback == SIGNAL_KEYBOARD_FOCUS); - mSelectSignal(mSelectedItems, take_keyboard_focus); - } - mSignalSelectCallback = FALSE; -} - -void LLFolderView::dumpSelectionInformation() -{ - llinfos << "LLFolderView::dumpSelectionInformation()" << llendl; - llinfos << "****************************************" << llendl; - selected_items_t::iterator item_it; - for (item_it = mSelectedItems.begin(); item_it != mSelectedItems.end(); ++item_it) - { - llinfos << " " << (*item_it)->getName() << llendl; - } - llinfos << "****************************************" << llendl; -} - -void LLFolderView::updateRenamerPosition() -{ - if(mRenameItem) - { - // See also LLFolderViewItem::draw() - S32 x = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mRenameItem->getIndentation(); - S32 y = mRenameItem->getRect().getHeight() - mRenameItem->getItemHeight() - RENAME_HEIGHT_PAD; - mRenameItem->localPointToScreen( x, y, &x, &y ); - screenPointToLocal( x, y, &x, &y ); - mRenamer->setOrigin( x, y ); - - LLRect scroller_rect(0, 0, LLUI::getWindowSize().mV[VX], 0); - if (mScrollContainer) - { - scroller_rect = mScrollContainer->getContentWindowRect(); - } - - S32 width = llmax(llmin(mRenameItem->getRect().getWidth() - x, scroller_rect.getWidth() - x - getRect().mLeft), MINIMUM_RENAMER_WIDTH); - S32 height = mRenameItem->getItemHeight() - RENAME_HEIGHT_PAD; - mRenamer->reshape( width, height, TRUE ); - } -} - -// Update visibility and availability (i.e. enabled/disabled) of context menu items. -void LLFolderView::updateMenuOptions(LLMenuGL* menu) -{ - const LLView::child_list_t *list = menu->getChildList(); - - LLView::child_list_t::const_iterator menu_itor; - for (menu_itor = list->begin(); menu_itor != list->end(); ++menu_itor) - { - (*menu_itor)->setVisible(FALSE); - (*menu_itor)->pushVisible(TRUE); - (*menu_itor)->setEnabled(TRUE); - } - - // Successively filter out invalid options - - U32 flags = FIRST_SELECTED_ITEM; - for (selected_items_t::iterator item_itor = mSelectedItems.begin(); - item_itor != mSelectedItems.end(); - ++item_itor) - { - LLFolderViewItem* selected_item = (*item_itor); - selected_item->buildContextMenu(*menu, flags); - flags = 0x0; - } - - addNoOptions(menu); -} - -// Refresh the context menu (that is already shown). -void LLFolderView::updateMenu() -{ - LLMenuGL* menu = (LLMenuGL*)mPopupMenuHandle.get(); - if (menu && menu->getVisible()) - { - updateMenuOptions(menu); - menu->needsArrange(); // update menu height if needed - } -} - -bool LLFolderView::selectFirstItem() -{ - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();++iter) - { - LLFolderViewFolder* folder = (*iter ); - if (folder->getVisible()) - { - LLFolderViewItem* itemp = folder->getNextFromChild(0,true); - if(itemp) - setSelection(itemp,FALSE,TRUE); - return true; - } - - } - for(items_t::iterator iit = mItems.begin(); - iit != mItems.end(); ++iit) - { - LLFolderViewItem* itemp = (*iit); - if (itemp->getVisible()) - { - setSelection(itemp,FALSE,TRUE); - return true; - } - } - return false; -} -bool LLFolderView::selectLastItem() -{ - for(items_t::reverse_iterator iit = mItems.rbegin(); - iit != mItems.rend(); ++iit) - { - LLFolderViewItem* itemp = (*iit); - if (itemp->getVisible()) - { - setSelection(itemp,FALSE,TRUE); - return true; - } - } - for (folders_t::reverse_iterator iter = mFolders.rbegin(); - iter != mFolders.rend();++iter) - { - LLFolderViewFolder* folder = (*iter); - if (folder->getVisible()) - { - LLFolderViewItem* itemp = folder->getPreviousFromChild(0,true); - if(itemp) - setSelection(itemp,FALSE,TRUE); - return true; - } - } - return false; -} - - -S32 LLFolderView::notify(const LLSD& info) -{ - if(info.has("action")) - { - std::string str_action = info["action"]; - if(str_action == "select_first") - { - setFocus(true); - selectFirstItem(); - scrollToShowSelection(); - return 1; - - } - else if(str_action == "select_last") - { - setFocus(true); - selectLastItem(); - scrollToShowSelection(); - return 1; - } - } - return 0; -} - - -///---------------------------------------------------------------------------- -/// Local function definitions -///---------------------------------------------------------------------------- - -void LLFolderView::onRenamerLost() -{ - if (mRenamer && mRenamer->getVisible()) - { - mRenamer->setVisible(FALSE); - - // will commit current name (which could be same as original name) - mRenamer->setFocus(FALSE); - } - - if( mRenameItem ) - { - setSelection( mRenameItem, TRUE ); - mRenameItem = NULL; - } -} - -S32 LLFolderView::getItemHeight() -{ - if(!hasVisibleChildren()) - { - //We need to display status textbox, let's reserve some place for it - return llmax(0, mStatusTextBox->getTextPixelHeight()); - } - return 0; -} diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h deleted file mode 100644 index 78f1d8aff2..0000000000 --- a/indra/newview/llfolderview.h +++ /dev/null @@ -1,393 +0,0 @@ -/** - * @file llfolderview.h - * @brief Definition of the folder view collection of classes. - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -/** - * - * The folder view collection of classes provides an interface for - * making a 'folder view' similar to the way the a single pane file - * folder interface works. - * - */ - -#ifndef LL_LLFOLDERVIEW_H -#define LL_LLFOLDERVIEW_H - -#include "llfolderviewitem.h" // because LLFolderView is-a LLFolderViewFolder - -#include "lluictrl.h" -#include "v4color.h" -#include "stdenums.h" -#include "lldepthstack.h" -#include "lleditmenuhandler.h" -#include "llfontgl.h" -#include "llscrollcontainer.h" -#include "lltooldraganddrop.h" - -class LLFolderViewModelInterface; -class LLFolderViewFolder; -class LLFolderViewItem; -class LLFolderViewFilter; -class LLPanel; -class LLLineEditor; -class LLMenuGL; -class LLUICtrl; -class LLTextBox; - -/** - * Class LLFolderViewScrollContainer - * - * A scroll container which provides the information about the height - * of currently displayed folder view contents. - * Used for updating vertical scroll bar visibility in inventory panel. - * See LLScrollContainer::calcVisibleSize(). - */ -class LLFolderViewScrollContainer : public LLScrollContainer -{ -public: - /*virtual*/ ~LLFolderViewScrollContainer() {}; - /*virtual*/ const LLRect getScrolledViewRect() const; - -protected: - LLFolderViewScrollContainer(const LLScrollContainer::Params& p); - friend class LLUICtrlFactory; -}; - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -// Class LLFolderView -// -// The LLFolderView represents the root level folder view object. -// It manages the screen region of the folder view. -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -class LLFolderView : public LLFolderViewFolder, public LLEditMenuHandler -{ -public: - struct Params : public LLInitParam::Block - { - Mandatory parent_panel; - Optional task_id; - Optional title; - Optional use_label_suffix, - allow_multiselect, - show_empty_message, - use_ellipses, - show_item_link_overlays; - Mandatory view_model; - - Params(); - }; - - friend class LLFolderViewScrollContainer; - - LLFolderView(const Params&); - virtual ~LLFolderView( void ); - - virtual BOOL canFocusChildren() const; - - virtual const LLFolderView* getRoot() const { return this; } - virtual LLFolderView* getRoot() { return this; } - - LLFolderViewModelInterface* getFolderViewModel() { return mViewModel; } - const LLFolderViewModelInterface* getFolderViewModel() const { return mViewModel; } - - void setFilterPermMask(PermissionMask filter_perm_mask); - - typedef boost::signals2::signal& items, BOOL user_action)> signal_t; - void setSelectCallback(const signal_t::slot_type& cb) { mSelectSignal.connect(cb); } - void setReshapeCallback(const signal_t::slot_type& cb) { mReshapeSignal.connect(cb); } - - bool getAllowMultiSelect() { return mAllowMultiSelect; } - - // Close all folders in the view - void closeAllFolders(); - void openTopLevelFolders(); - - virtual BOOL addFolder( LLFolderViewFolder* folder); - - // Find width and height of this object and its children. Also - // makes sure that this view and its children are the right size. - virtual S32 arrange( S32* width, S32* height ); - virtual S32 getItemHeight(); - - void arrangeAll() { mArrangeGeneration++; } - S32 getArrangeGeneration() { return mArrangeGeneration; } - - // applies filters to control visibility of items - virtual void filter( LLFolderViewFilter& filter); - - // Get the last selected item - virtual LLFolderViewItem* getCurSelectedItem( void ); - - // Record the selected item and pass it down the hierarchy. - virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, - BOOL take_keyboard_focus = TRUE); - - // This method is used to toggle the selection of an item. Walks - // children, and keeps track of selected objects. - virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); - - virtual std::set getSelectionList() const; - S32 getNumSelectedItems() { return mSelectedItems.size(); } - - // Make sure if ancestor is selected, descendants are not - void sanitizeSelection(); - virtual void clearSelection(); - void addToSelectionList(LLFolderViewItem* item); - void removeFromSelectionList(LLFolderViewItem* item); - - BOOL startDrag(LLToolDragAndDrop::ESource source); - void setDragAndDropThisFrame() { mDragAndDropThisFrame = TRUE; } - void setDraggingOverItem(LLFolderViewItem* item) { mDraggingOverItem = item; } - LLFolderViewItem* getDraggingOverItem() { return mDraggingOverItem; } - - // Deletion functionality - void removeSelectedItems(); - - // Open the selected item - void openSelectedItems( void ); - void propertiesSelectedItems( void ); - - void autoOpenItem(LLFolderViewFolder* item); - void closeAutoOpenedFolders(); - BOOL autoOpenTest(LLFolderViewFolder* item); - BOOL isOpen() const { return TRUE; } // root folder always open - - // Copy & paste - virtual void copy(); - virtual BOOL canCopy() const; - - virtual void cut(); - virtual BOOL canCut() const; - - virtual void paste(); - virtual BOOL canPaste() const; - - virtual void doDelete(); - virtual BOOL canDoDelete() const; - - // Public rename functionality - can only start the process - void startRenamingSelectedItem( void ); - - // LLView functionality - ///*virtual*/ BOOL handleKey( KEY key, MASK mask, BOOL called_from_parent ); - /*virtual*/ BOOL handleKeyHere( KEY key, MASK mask ); - /*virtual*/ BOOL handleUnicodeCharHere(llwchar uni_char); - /*virtual*/ BOOL handleMouseDown( S32 x, S32 y, MASK mask ); - /*virtual*/ BOOL handleDoubleClick( S32 x, S32 y, MASK mask ); - /*virtual*/ BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); - /*virtual*/ BOOL handleHover( S32 x, S32 y, MASK mask ); - /*virtual*/ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg); - /*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE); - /*virtual*/ void onMouseLeave(S32 x, S32 y, MASK mask) { setShowSelectionContext(FALSE); } - virtual void draw(); - virtual void deleteAllChildren(); - - void scrollToShowSelection(); - void scrollToShowItem(LLFolderViewItem* item, const LLRect& constraint_rect); - void setScrollContainer( LLScrollContainer* parent ) { mScrollContainer = parent; } - LLRect getVisibleRect(); - - BOOL search(LLFolderViewItem* first_item, const std::string &search_string, BOOL backward); - void setShowSelectionContext(BOOL show) { mShowSelectionContext = show; } - BOOL getShowSelectionContext(); - void setShowSingleSelection(BOOL show); - BOOL getShowSingleSelection() { return mShowSingleSelection; } - F32 getSelectionFadeElapsedTime() { return mMultiSelectionFadeTimer.getElapsedTimeF32(); } - bool getUseEllipses() { return mUseEllipses; } - - void update(); // needs to be called periodically (e.g. once per frame) - - BOOL needsAutoSelect() { return mNeedsAutoSelect && !mAutoSelectOverride; } - BOOL needsAutoRename() { return mNeedsAutoRename; } - void setNeedsAutoRename(BOOL val) { mNeedsAutoRename = val; } - void setPinningSelectedItem(BOOL val) { mPinningSelectedItem = val; } - void setAutoSelectOverride(BOOL val) { mAutoSelectOverride = val; } - - bool showItemLinkOverlays() { return mShowItemLinkOverlays; } - - void setCallbackRegistrar(LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* registrar) { mCallbackRegistrar = registrar; } - - LLPanel* getParentPanel() { return mParentPanel; } - // DEBUG only - void dumpSelectionInformation(); - - virtual S32 notify(const LLSD& info) ; - - bool useLabelSuffix() { return mUseLabelSuffix; } - void updateMenu(); - -private: - void updateMenuOptions(LLMenuGL* menu); - void updateRenamerPosition(); - -protected: - LLScrollContainer* mScrollContainer; // NULL if this is not a child of a scroll container. - - void commitRename( const LLSD& data ); - void onRenamerLost(); - - void finishRenamingItem( void ); - void closeRenamer( void ); - - bool selectFirstItem(); - bool selectLastItem(); - - BOOL addNoOptions(LLMenuGL* menu) const; - - -protected: - LLHandle mPopupMenuHandle; - - typedef std::deque selected_items_t; - selected_items_t mSelectedItems; - BOOL mKeyboardSelection; - BOOL mAllowMultiSelect; - BOOL mShowEmptyMessage; - BOOL mShowFolderHierarchy; - LLUUID mSourceID; - - // Renaming variables and methods - LLFolderViewItem* mRenameItem; // The item currently being renamed - LLLineEditor* mRenamer; - - BOOL mNeedsScroll; - BOOL mPinningSelectedItem; - LLRect mScrollConstraintRect; - BOOL mNeedsAutoSelect; - BOOL mAutoSelectOverride; - BOOL mNeedsAutoRename; - bool mUseLabelSuffix; - bool mShowItemLinkOverlays; - - LLDepthStack mAutoOpenItems; - LLFolderViewFolder* mAutoOpenCandidate; - LLFrameTimer mAutoOpenTimer; - LLFrameTimer mSearchTimer; - std::string mSearchString; - BOOL mShowSelectionContext; - BOOL mShowSingleSelection; - LLFrameTimer mMultiSelectionFadeTimer; - S32 mArrangeGeneration; - - signal_t mSelectSignal; - signal_t mReshapeSignal; - S32 mSignalSelectCallback; - S32 mMinWidth; - BOOL mDragAndDropThisFrame; - - LLPanel* mParentPanel; - - LLFolderViewModelInterface* mViewModel; - - /** - * Is used to determine if we need to cut text In LLFolderViewItem to avoid horizontal scroll. - * NOTE: For now it's used only to cut LLFolderViewItem::mLabel text for Landmarks in Places Panel. - */ - bool mUseEllipses; // See EXT-719 - - /** - * Contains item under mouse pointer while dragging - */ - LLFolderViewItem* mDraggingOverItem; // See EXT-719 - - LLUICtrl::CommitCallbackRegistry::ScopedRegistrar* mCallbackRegistrar; - -public: - static F32 sAutoOpenTime; - LLTextBox* mStatusTextBox; - -}; - - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -// Class LLFolderViewFunctor -// -// Simple abstract base class for applying a functor to folders and -// items in a folder view hierarchy. This is suboptimal for algorithms -// that only work folders or only work on items, but I'll worry about -// that later when it's determined to be too slow. -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -class LLFolderViewFunctor -{ -public: - virtual ~LLFolderViewFunctor() {} - virtual void doFolder(LLFolderViewFolder* folder) = 0; - virtual void doItem(LLFolderViewItem* item) = 0; -}; - -class LLSelectFirstFilteredItem : public LLFolderViewFunctor -{ -public: - LLSelectFirstFilteredItem() : mItemSelected(FALSE) {} - virtual ~LLSelectFirstFilteredItem() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); - BOOL wasItemSelected() { return mItemSelected; } -protected: - BOOL mItemSelected; -}; - -class LLOpenFilteredFolders : public LLFolderViewFunctor -{ -public: - LLOpenFilteredFolders() {} - virtual ~LLOpenFilteredFolders() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); -}; - -class LLSaveFolderState : public LLFolderViewFunctor -{ -public: - LLSaveFolderState() : mApply(FALSE) {} - virtual ~LLSaveFolderState() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item) {} - void setApply(BOOL apply); - void clearOpenFolders() { mOpenFolders.clear(); } -protected: - std::set mOpenFolders; - BOOL mApply; -}; - -class LLOpenFoldersWithSelection : public LLFolderViewFunctor -{ -public: - LLOpenFoldersWithSelection() {} - virtual ~LLOpenFoldersWithSelection() {} - virtual void doFolder(LLFolderViewFolder* folder); - virtual void doItem(LLFolderViewItem* item); -}; - -// Flags for buildContextMenu() -const U32 SUPPRESS_OPEN_ITEM = 0x1; -const U32 FIRST_SELECTED_ITEM = 0x2; - -#endif // LL_LLFOLDERVIEW_H diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp deleted file mode 100644 index dee3fe7218..0000000000 --- a/indra/newview/llfolderviewitem.cpp +++ /dev/null @@ -1,2060 +0,0 @@ -/** -* @file llfolderviewitem.cpp -* @brief Items and folders that can appear in a hierarchical folder view -* -* $LicenseInfo:firstyear=2001&license=viewerlgpl$ -* Second Life Viewer Source Code -* Copyright (C) 2010, Linden Research, Inc. -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU Lesser General Public -* License as published by the Free Software Foundation; -* version 2.1 of the License only. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public -* License along with this library; if not, write to the Free Software -* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -* -* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA -* $/LicenseInfo$ -*/ -#include "llviewerprecompiledheaders.h" - -#include "llfolderviewitem.h" - -// viewer includes -#include "llfolderview.h" -#include "llfolderviewmodel.h" -#include "llpanel.h" - -// linden library includes -#include "llclipboard.h" -#include "llfocusmgr.h" // gFocusMgr -#include "lltrans.h" - -///---------------------------------------------------------------------------- -/// Class LLFolderViewItem -///---------------------------------------------------------------------------- - -static LLDefaultChildRegistry::Register r("folder_view_item"); - -// statics -std::map LLFolderViewItem::sFonts; // map of styles to fonts - -// only integers can be initialized in header -const F32 LLFolderViewItem::FOLDER_CLOSE_TIME_CONSTANT = 0.02f; -const F32 LLFolderViewItem::FOLDER_OPEN_TIME_CONSTANT = 0.03f; - -const LLColor4U DEFAULT_WHITE(255, 255, 255); - - -//static -LLFontGL* LLFolderViewItem::getLabelFontForStyle(U8 style) -{ - LLFontGL* rtn = sFonts[style]; - if (!rtn) // grab label font with this style, lazily - { - LLFontDescriptor labelfontdesc("SansSerif", "Small", style); - rtn = LLFontGL::getFont(labelfontdesc); - if (!rtn) - { - rtn = LLFontGL::getFontDefault(); - } - sFonts[style] = rtn; - } - return rtn; -} - -//static -void LLFolderViewItem::initClass() -{ -} - -//static -void LLFolderViewItem::cleanupClass() -{ - sFonts.clear(); -} - - -// NOTE: Optimize this, we call it a *lot* when opening a large inventory -LLFolderViewItem::Params::Params() -: root(), - listener(), - folder_arrow_image("folder_arrow_image"), - folder_indentation("folder_indentation"), - selection_image("selection_image"), - item_height("item_height"), - item_top_pad("item_top_pad"), - creation_date() -{} - -// Default constructor -LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p) -: LLView(p), - mLabelWidth(0), - mLabelWidthDirty(false), - mParentFolder( NULL ), - mIsSelected( FALSE ), - mIsCurSelection( FALSE ), - mSelectPending(FALSE), - mLabelStyle( LLFontGL::NORMAL ), - mHasVisibleChildren(FALSE), - mIndentation(0), - mItemHeight(p.item_height), - //TODO RN: create interface for string highlighting - //mStringMatchOffset(std::string::npos), - mControlLabelRotation(0.f), - mDragAndDropTarget(FALSE), - mLabel(p.name), - mRoot(p.root), - mViewModelItem(p.listener), - mIsMouseOverTitle(false) -{ - if (mViewModelItem) - { - mViewModelItem->setFolderViewItem(this); - } -} - -BOOL LLFolderViewItem::postBuild() -{ - refresh(); - return TRUE; -} - -// Destroys the object -LLFolderViewItem::~LLFolderViewItem( void ) -{ - delete mViewModelItem; - mViewModelItem = NULL; -} - -LLFolderView* LLFolderViewItem::getRoot() -{ - return mRoot; -} - -const LLFolderView* LLFolderViewItem::getRoot() const -{ - return mRoot; -} -// Returns true if this object is a child (or grandchild, etc.) of potential_ancestor. -BOOL LLFolderViewItem::isDescendantOf( const LLFolderViewFolder* potential_ancestor ) -{ - LLFolderViewItem* root = this; - while( root->mParentFolder ) - { - if( root->mParentFolder == potential_ancestor ) - { - return TRUE; - } - root = root->mParentFolder; - } - return FALSE; -} - -LLFolderViewItem* LLFolderViewItem::getNextOpenNode(BOOL include_children) -{ - if (!mParentFolder) - { - return NULL; - } - - LLFolderViewItem* itemp = mParentFolder->getNextFromChild( this, include_children ); - while(itemp && !itemp->getVisible()) - { - LLFolderViewItem* next_itemp = itemp->mParentFolder->getNextFromChild( itemp, include_children ); - if (itemp == next_itemp) - { - // hit last item - return itemp->getVisible() ? itemp : this; - } - itemp = next_itemp; - } - - return itemp; -} - -LLFolderViewItem* LLFolderViewItem::getPreviousOpenNode(BOOL include_children) -{ - if (!mParentFolder) - { - return NULL; - } - - LLFolderViewItem* itemp = mParentFolder->getPreviousFromChild( this, include_children ); - - // Skip over items that are invisible or are hidden from the UI. - while(itemp && !itemp->getVisible()) - { - LLFolderViewItem* next_itemp = itemp->mParentFolder->getPreviousFromChild( itemp, include_children ); - if (itemp == next_itemp) - { - // hit first item - return itemp->getVisible() ? itemp : this; - } - itemp = next_itemp; - } - - return itemp; -} - -BOOL LLFolderViewItem::passedFilter(S32 filter_generation) -{ - return getViewModelItem()->passedFilter(filter_generation); -} - -void LLFolderViewItem::refresh() -{ - LLFolderViewModelItem& vmi = *getViewModelItem(); - - mLabel = vmi.getDisplayName(); - - setToolTip(mLabel); - mIcon = vmi.getIcon(); - mIconOpen = vmi.getIconOpen(); - mIconOverlay = vmi.getIconOverlay(); - - if (mRoot->useLabelSuffix()) - { - mLabelStyle = vmi.getLabelStyle(); - mLabelSuffix = vmi.getLabelSuffix(); - } - - //TODO RN: make sure this logic still fires - //std::string searchable_label(mLabel); - //searchable_label.append(mLabelSuffix); - //LLStringUtil::toUpper(searchable_label); - - //if (mSearchableLabel.compare(searchable_label)) - //{ - // mSearchableLabel.assign(searchable_label); - // vmi.dirtyFilter(); - // // some part of label has changed, so overall width has potentially changed, and sort order too - // if (mParentFolder) - // { - // mParentFolder->requestSort(); - // mParentFolder->requestArrange(); - // } - //} - - mLabelWidthDirty = true; - vmi.dirtyFilter(); -} - -// Utility function for LLFolderView -void LLFolderViewItem::arrangeAndSet(BOOL set_selection, - BOOL take_keyboard_focus) -{ - LLFolderView* root = getRoot(); - if (getParentFolder()) - { - getParentFolder()->requestArrange(); - } - if(set_selection) - { - getRoot()->setSelection(this, TRUE, take_keyboard_focus); - if(root) - { - root->scrollToShowSelection(); - } - } -} - - -std::set LLFolderViewItem::getSelectionList() const -{ - std::set selection; - return selection; -} - -// addToFolder() returns TRUE if it succeeds. FALSE otherwise -BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) -{ - return folder->addItem(this); -} - - -// Finds width and height of this object and its children. Also -// makes sure that this view and its children are the right size. -S32 LLFolderViewItem::arrange( S32* width, S32* height ) -{ - const Params& p = LLUICtrlFactory::getDefaultParams(); - S32 indentation = p.folder_indentation(); - // Only indent deeper items in hierarchy - mIndentation = (getParentFolder()) - ? getParentFolder()->getIndentation() + indentation - : 0; - if (mLabelWidthDirty) - { - mLabelWidth = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + getLabelFontForStyle(mLabelStyle)->getWidth(mLabel) + getLabelFontForStyle(mLabelStyle)->getWidth(mLabelSuffix) + TEXT_PAD_RIGHT; - mLabelWidthDirty = false; - } - - *width = llmax(*width, mLabelWidth + mIndentation); - - // determine if we need to use ellipses to avoid horizontal scroll. EXT-719 - bool use_ellipses = getRoot()->getUseEllipses(); - if (use_ellipses) - { - // limit to set rect to avoid horizontal scrollbar - *width = llmin(*width, getRoot()->getRect().getWidth()); - } - *height = getItemHeight(); - return *height; -} - -S32 LLFolderViewItem::getItemHeight() -{ - return mItemHeight; -} - -// *TODO: This can be optimized a lot by simply recording that it is -// selected in the appropriate places, and assuming that set selection -// means 'deselect' for a leaf item. Do this optimization after -// multiple selection is implemented to make sure it all plays nice -// together. -BOOL LLFolderViewItem::setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus) -{ - if (selection == this && !mIsSelected) - { - selectItem(); - } - else if (mIsSelected) // Deselect everything else. - { - deselectItem(); - } - return mIsSelected; -} - -BOOL LLFolderViewItem::changeSelection(LLFolderViewItem* selection, BOOL selected) -{ - if (selection == this) - { - if (mIsSelected) - { - deselectItem(); - } - else - { - selectItem(); - } - return TRUE; - } - return FALSE; -} - -void LLFolderViewItem::deselectItem(void) -{ - mIsSelected = FALSE; -} - -void LLFolderViewItem::selectItem(void) -{ - if (mIsSelected == FALSE) - { - getViewModelItem()->selectItem(); - mIsSelected = TRUE; - } -} - -BOOL LLFolderViewItem::isMovable() -{ - return getViewModelItem()->isItemMovable(); -} - -BOOL LLFolderViewItem::isRemovable() -{ - return getViewModelItem()->isItemRemovable(); -} - -void LLFolderViewItem::destroyView() -{ - getRoot()->removeFromSelectionList(this); - - if (mParentFolder) - { - // removeView deletes me - mParentFolder->extractItem(this); - } - delete this; -} - -// Call through to the viewed object and return true if it can be -// removed. -//BOOL LLFolderViewItem::removeRecursively(BOOL single_item) -BOOL LLFolderViewItem::remove() -{ - if(!isRemovable()) - { - return FALSE; - } - return getViewModelItem()->removeItem(); -} - -// Build an appropriate context menu for the item. -void LLFolderViewItem::buildContextMenu(LLMenuGL& menu, U32 flags) -{ - getViewModelItem()->buildContextMenu(menu, flags); -} - -void LLFolderViewItem::openItem( void ) -{ - getViewModelItem()->openItem(); -} - -void LLFolderViewItem::rename(const std::string& new_name) -{ - if( !new_name.empty() ) - { - getViewModelItem()->renameItem(new_name); - - if(mParentFolder) - { - mParentFolder->requestSort(); - } - } - } - -const std::string& LLFolderViewItem::getName( void ) const -{ - return getViewModelItem()->getName(); -} - -// LLView functionality -BOOL LLFolderViewItem::handleRightMouseDown( S32 x, S32 y, MASK mask ) -{ - if(!mIsSelected) - { - getRoot()->setSelection(this, FALSE); - } - make_ui_sound("UISndClick"); - return TRUE; -} - -BOOL LLFolderViewItem::handleMouseDown( S32 x, S32 y, MASK mask ) -{ - if (LLView::childrenHandleMouseDown(x, y, mask)) - { - return TRUE; - } - - // No handler needed for focus lost since this class has no - // state that depends on it. - gFocusMgr.setMouseCapture( this ); - - if (!mIsSelected) - { - if(mask & MASK_CONTROL) - { - getRoot()->changeSelection(this, !mIsSelected); - } - else if (mask & MASK_SHIFT) - { - getParentFolder()->extendSelectionTo(this); - } - else - { - getRoot()->setSelection(this, FALSE); - } - make_ui_sound("UISndClick"); - } - else - { - mSelectPending = TRUE; - } - - if( isMovable() ) - { - S32 screen_x; - S32 screen_y; - localPointToScreen(x, y, &screen_x, &screen_y ); - LLToolDragAndDrop::getInstance()->setDragStart( screen_x, screen_y ); - } - return TRUE; -} - -BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask ) -{ - mIsMouseOverTitle = (y > (getRect().getHeight() - mItemHeight)); - - if( hasMouseCapture() && isMovable() ) - { - S32 screen_x; - S32 screen_y; - localPointToScreen(x, y, &screen_x, &screen_y ); - BOOL can_drag = TRUE; - if( LLToolDragAndDrop::getInstance()->isOverThreshold( screen_x, screen_y ) ) - { - LLFolderView* root = getRoot(); - - if(root->getCurSelectedItem()) - { - LLToolDragAndDrop::ESource src = LLToolDragAndDrop::SOURCE_WORLD; - - // *TODO: push this into listener and remove - // dependency on llagent - src = getViewModelItem()->getDragSource(); - - can_drag = root->startDrag(src); - if (can_drag) - { - // if (getViewModelItem()) getViewModelItem()->startDrag(); - // RN: when starting drag and drop, clear out last auto-open - root->autoOpenTest(NULL); - root->setShowSelectionContext(TRUE); - - // Release keyboard focus, so that if stuff is dropped into the - // world, pressing the delete key won't blow away the inventory - // item. - gFocusMgr.setKeyboardFocus(NULL); - - return LLToolDragAndDrop::getInstance()->handleHover( x, y, mask ); - } - } - } - - if (can_drag) - { - getWindow()->setCursor(UI_CURSOR_ARROW); - } - else - { - getWindow()->setCursor(UI_CURSOR_NOLOCKED); - } - return TRUE; - } - else - { - if (getRoot()) - { - getRoot()->setShowSelectionContext(FALSE); - } - getWindow()->setCursor(UI_CURSOR_ARROW); - // let parent handle this then... - return FALSE; - } -} - - -BOOL LLFolderViewItem::handleDoubleClick( S32 x, S32 y, MASK mask ) -{ - getViewModelItem()->openItem(); - return TRUE; -} - -BOOL LLFolderViewItem::handleMouseUp( S32 x, S32 y, MASK mask ) -{ - if (LLView::childrenHandleMouseUp(x, y, mask)) - { - return TRUE; - } - - // if mouse hasn't moved since mouse down... - if ( pointInView(x, y) && mSelectPending ) - { - //...then select - if(mask & MASK_CONTROL) - { - getRoot()->changeSelection(this, !mIsSelected); - } - else if (mask & MASK_SHIFT) - { - getParentFolder()->extendSelectionTo(this); - } - else - { - getRoot()->setSelection(this, FALSE); - } - } - - mSelectPending = FALSE; - - if( hasMouseCapture() ) - { - if (getRoot()) - { - getRoot()->setShowSelectionContext(FALSE); - } - gFocusMgr.setMouseCapture( NULL ); - } - return TRUE; -} - -void LLFolderViewItem::onMouseLeave(S32 x, S32 y, MASK mask) -{ - mIsMouseOverTitle = false; -} - -BOOL LLFolderViewItem::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg) -{ - BOOL handled = FALSE; - BOOL accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); - handled = accepted; - if (accepted) - { - mDragAndDropTarget = TRUE; - *accept = ACCEPT_YES_MULTI; - } - else - { - *accept = ACCEPT_NO; - } - if(mParentFolder && !handled) - { - // store this item to get it in LLFolderBridge::dragItemIntoFolder on drop event. - mRoot->setDraggingOverItem(this); - handled = mParentFolder->handleDragAndDropFromChild(mask,drop,cargo_type,cargo_data,accept,tooltip_msg); - mRoot->setDraggingOverItem(NULL); - } - if (handled) - { - lldebugst(LLERR_USER_INPUT) << "dragAndDrop handled by LLFolderViewItem" << llendl; - } - - return handled; -} - -void LLFolderViewItem::draw() -{ - static LLUIColor sFgColor = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); - static LLUIColor sHighlightBgColor = LLUIColorTable::instance().getColor("MenuItemHighlightBgColor", DEFAULT_WHITE); - static LLUIColor sHighlightFgColor = LLUIColorTable::instance().getColor("MenuItemHighlightFgColor", DEFAULT_WHITE); - static LLUIColor sFocusOutlineColor = LLUIColorTable::instance().getColor("InventoryFocusOutlineColor", DEFAULT_WHITE); - static LLUIColor sFilterBGColor = LLUIColorTable::instance().getColor("FilterBackgroundColor", DEFAULT_WHITE); - static LLUIColor sFilterTextColor = LLUIColorTable::instance().getColor("FilterTextColor", DEFAULT_WHITE); - static LLUIColor sSuffixColor = LLUIColorTable::instance().getColor("InventoryItemColor", DEFAULT_WHITE); - static LLUIColor sLibraryColor = LLUIColorTable::instance().getColor("InventoryItemLibraryColor", DEFAULT_WHITE); - static LLUIColor sLinkColor = LLUIColorTable::instance().getColor("InventoryItemLinkColor", DEFAULT_WHITE); - static LLUIColor sSearchStatusColor = LLUIColorTable::instance().getColor("InventorySearchStatusColor", DEFAULT_WHITE); - static LLUIColor sMouseOverColor = LLUIColorTable::instance().getColor("InventoryMouseOverColor", DEFAULT_WHITE); - - const Params& default_params = LLUICtrlFactory::getDefaultParams(); - const S32 TOP_PAD = default_params.item_top_pad; - const S32 FOCUS_LEFT = 1; - const LLFontGL* font = getLabelFontForStyle(mLabelStyle); - - getViewModelItem()->update(); - - //--------------------------------------------------------------------------------// - // Draw open folder arrow - // - if (hasVisibleChildren() || getViewModelItem()->hasChildren()) - { - LLUIImage* arrow_image = default_params.folder_arrow_image; - gl_draw_scaled_rotated_image( - mIndentation, getRect().getHeight() - ARROW_SIZE - TEXT_PAD - TOP_PAD, - ARROW_SIZE, ARROW_SIZE, mControlLabelRotation, arrow_image->getImage(), sFgColor); - } - - - //--------------------------------------------------------------------------------// - // Draw highlight for selected items - // - const BOOL show_context = (getRoot() ? getRoot()->getShowSelectionContext() : FALSE); - const BOOL filled = show_context || (getRoot() ? getRoot()->getParentPanel()->hasFocus() : FALSE); // If we have keyboard focus, draw selection filled - const S32 focus_top = getRect().getHeight(); - const S32 focus_bottom = getRect().getHeight() - mItemHeight; - const bool folder_open = (getRect().getHeight() > mItemHeight + 4); - if (mIsSelected) // always render "current" item. Only render other selected items if mShowSingleSelection is FALSE - { - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - LLColor4 bg_color = sHighlightBgColor; - if (!mIsCurSelection) - { - // do time-based fade of extra objects - F32 fade_time = (getRoot() ? getRoot()->getSelectionFadeElapsedTime() : 0.0f); - if (getRoot() && getRoot()->getShowSingleSelection()) - { - // fading out - bg_color.mV[VALPHA] = clamp_rescale(fade_time, 0.f, 0.4f, bg_color.mV[VALPHA], 0.f); - } - else - { - // fading in - bg_color.mV[VALPHA] = clamp_rescale(fade_time, 0.f, 0.4f, 0.f, bg_color.mV[VALPHA]); - } - } - gl_rect_2d(FOCUS_LEFT, - focus_top, - getRect().getWidth() - 2, - focus_bottom, - bg_color, filled); - if (mIsCurSelection) - { - gl_rect_2d(FOCUS_LEFT, - focus_top, - getRect().getWidth() - 2, - focus_bottom, - sFocusOutlineColor, FALSE); - } - if (folder_open) - { - gl_rect_2d(FOCUS_LEFT, - focus_bottom + 1, // overlap with bottom edge of above rect - getRect().getWidth() - 2, - 0, - sFocusOutlineColor, FALSE); - if (show_context) - { - gl_rect_2d(FOCUS_LEFT, - focus_bottom + 1, - getRect().getWidth() - 2, - 0, - sHighlightBgColor, TRUE); - } - } - } - else if (mIsMouseOverTitle) - { - gl_rect_2d(FOCUS_LEFT, - focus_top, - getRect().getWidth() - 2, - focus_bottom, - sMouseOverColor, FALSE); - } - - //--------------------------------------------------------------------------------// - // Draw DragNDrop highlight - // - if (mDragAndDropTarget) - { - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - gl_rect_2d(FOCUS_LEFT, - focus_top, - getRect().getWidth() - 2, - focus_bottom, - sHighlightBgColor, FALSE); - if (folder_open) - { - gl_rect_2d(FOCUS_LEFT, - focus_bottom + 1, // overlap with bottom edge of above rect - getRect().getWidth() - 2, - 0, - sHighlightBgColor, FALSE); - } - mDragAndDropTarget = FALSE; - } - - //--------------------------------------------------------------------------------// - // Draw open icon - // - const S32 icon_x = mIndentation + ARROW_SIZE + TEXT_PAD; - if (!mIconOpen.isNull() && (llabs(mControlLabelRotation) > 80)) // For open folders - { - mIconOpen->draw(icon_x, getRect().getHeight() - mIconOpen->getHeight() - TOP_PAD + 1); - } - else if (mIcon) - { - mIcon->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); - } - - if (mIconOverlay && getRoot()->showItemLinkOverlays()) - { - mIconOverlay->draw(icon_x, getRect().getHeight() - mIcon->getHeight() - TOP_PAD + 1); - } - - //--------------------------------------------------------------------------------// - // Exit if no label to draw - // - if (mLabel.empty()) - { - return; - } - - LLColor4 color = (mIsSelected && filled) ? sHighlightFgColor : sFgColor; - //TODO RN: implement this in terms of getColor() - //if (highlight_link) color = sLinkColor; - //if (gInventory.isObjectDescendentOf(getViewModelItem()->getUUID(), gInventory.getLibraryRootFolderID())) color = sLibraryColor; - - F32 right_x = 0; - F32 y = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; - F32 text_left = (F32)(ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mIndentation); - - //--------------------------------------------------------------------------------// - // Draw the actual label text - // - font->renderUTF8(mLabel, 0, text_left, y, color, - LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, - S32_MAX, getRect().getWidth() - (S32) text_left, &right_x, TRUE); - - //--------------------------------------------------------------------------------// - // Draw label suffix - // - if (!mLabelSuffix.empty()) - { - font->renderUTF8( mLabelSuffix, 0, right_x, y, sSuffixColor, - LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, - S32_MAX, S32_MAX, &right_x, FALSE ); - } - - //--------------------------------------------------------------------------------// - // Highlight string match - // - //TODO RN: expose interface for highlighting - //if (mStringMatchOffset != std::string::npos) - //{ - // // don't draw backgrounds for zero-length strings - // S32 filter_string_length = getRoot()->getFilterSubString().size(); - // if (filter_string_length > 0) - // { - // std::string combined_string = mLabel + mLabelSuffix; - // S32 left = llround(text_left) + font->getWidth(combined_string, 0, mStringMatchOffset) - 1; - // S32 right = left + font->getWidth(combined_string, mStringMatchOffset, filter_string_length) + 2; - // S32 bottom = llfloor(getRect().getHeight() - font->getLineHeight() - 3 - TOP_PAD); - // S32 top = getRect().getHeight() - TOP_PAD; - // - // LLUIImage* box_image = default_params.selection_image; - // LLRect box_rect(left, top, right, bottom); - // box_image->draw(box_rect, sFilterBGColor); - // F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mStringMatchOffset); - // F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD; - // font->renderUTF8( combined_string, mStringMatchOffset, match_string_left, yy, - // sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, - // filter_string_length, S32_MAX, &right_x, FALSE ); - // } - //} -} - -const LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) const - { - return getRoot()->getFolderViewModel(); -} - -LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) - { - return getRoot()->getFolderViewModel(); -} - - -///---------------------------------------------------------------------------- -/// Class LLFolderViewFolder -///---------------------------------------------------------------------------- - -LLFolderViewFolder::LLFolderViewFolder( const LLFolderViewItem::Params& p ): - LLFolderViewItem( p ), - mIsOpen(FALSE), - mExpanderHighlighted(FALSE), - mCurHeight(0.f), - mTargetHeight(0.f), - mAutoOpenCountdown(0.f), - mLastArrangeGeneration( -1 ), - mLastCalculatedWidth(0) -{ -} - -// Destroys the object -LLFolderViewFolder::~LLFolderViewFolder( void ) -{ - // The LLView base class takes care of object destruction. make sure that we - // don't have mouse or keyboard focus - gFocusMgr.releaseFocusIfNeeded( this ); // calls onCommit() -} - -// addToFolder() returns TRUE if it succeeds. FALSE otherwise -BOOL LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder) -{ - return folder->addFolder(this); -} - -static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); - -// Finds width and height of this object and its children. Also -// makes sure that this view and its children are the right size. -S32 LLFolderViewFolder::arrange( S32* width, S32* height ) -{ - // sort before laying out contents - getRoot()->getFolderViewModel()->sort(this); - - LLFastTimer t2(FTM_ARRANGE); - - // evaluate mHasVisibleChildren - mHasVisibleChildren = false; - if (getViewModelItem()->descendantsPassedFilter()) - { - // We have to verify that there's at least one child that's not filtered out - bool found = false; - // Try the items first - for (items_t::iterator iit = mItems.begin(); iit != mItems.end(); ++iit) - { - LLFolderViewItem* itemp = (*iit); - found = itemp->passedFilter(); - if (found) - break; - } - if (!found) - { - // If no item found, try the folders - for (folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) - { - LLFolderViewFolder* folderp = (*fit); - found = folderp->passedFilter(); - if (found) - break; - } - } - - mHasVisibleChildren = found; - } - - // calculate height as a single item (without any children), and reshapes rectangle to match - LLFolderViewItem::arrange( width, height ); - - // clamp existing animated height so as to never get smaller than a single item - mCurHeight = llmax((F32)*height, mCurHeight); - - // initialize running height value as height of single item in case we have no children - F32 running_height = (F32)*height; - F32 target_height = (F32)*height; - - // are my children visible? - if (needsArrange()) - { - // set last arrange generation first, in case children are animating - // and need to be arranged again - mLastArrangeGeneration = getRoot()->getArrangeGeneration(); - if (isOpen()) - { - // Add sizes of children - S32 parent_item_height = getRect().getHeight(); - - for(folders_t::iterator fit = mFolders.begin(); fit != mFolders.end(); ++fit) - { - LLFolderViewFolder* folderp = (*fit); - folderp->setVisible(folderp->passedFilter()); // passed filter or has descendants that passed filter - - if (folderp->getVisible()) - { - S32 child_width = *width; - S32 child_height = 0; - S32 child_top = parent_item_height - llround(running_height); - - target_height += folderp->arrange( &child_width, &child_height ); - - running_height += (F32)child_height; - *width = llmax(*width, child_width); - folderp->setOrigin( 0, child_top - folderp->getRect().getHeight() ); - } - } - for(items_t::iterator iit = mItems.begin(); - iit != mItems.end(); ++iit) - { - LLFolderViewItem* itemp = (*iit); - itemp->setVisible(itemp->passedFilter()); - - if (itemp->getVisible()) - { - S32 child_width = *width; - S32 child_height = 0; - S32 child_top = parent_item_height - llround(running_height); - - target_height += itemp->arrange( &child_width, &child_height ); - // don't change width, as this item is as wide as its parent folder by construction - itemp->reshape( itemp->getRect().getWidth(), child_height); - - running_height += (F32)child_height; - *width = llmax(*width, child_width); - itemp->setOrigin( 0, child_top - itemp->getRect().getHeight() ); - } - } - } - - mTargetHeight = target_height; - // cache this width so next time we can just return it - mLastCalculatedWidth = *width; - } - else - { - // just use existing width - *width = mLastCalculatedWidth; - } - - // animate current height towards target height - if (llabs(mCurHeight - mTargetHeight) > 1.f) - { - mCurHeight = lerp(mCurHeight, mTargetHeight, LLCriticalDamp::getInterpolant(isOpen() ? FOLDER_OPEN_TIME_CONSTANT : FOLDER_CLOSE_TIME_CONSTANT)); - - requestArrange(); - - // hide child elements that fall out of current animated height - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - // number of pixels that bottom of folder label is from top of parent folder - if (getRect().getHeight() - (*fit)->getRect().mTop + (*fit)->getItemHeight() - > llround(mCurHeight) + MAX_FOLDER_ITEM_OVERLAP) - { - // hide if beyond current folder height - (*fit)->setVisible(FALSE); - } - } - - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - // number of pixels that bottom of item label is from top of parent folder - if (getRect().getHeight() - (*iit)->getRect().mBottom - > llround(mCurHeight) + MAX_FOLDER_ITEM_OVERLAP) - { - (*iit)->setVisible(FALSE); - } - } - } - else - { - mCurHeight = mTargetHeight; - } - - // don't change width as this item is already as wide as its parent folder - reshape(getRect().getWidth(),llround(mCurHeight)); - - // pass current height value back to parent - *height = llround(mCurHeight); - - return llround(mTargetHeight); -} - -BOOL LLFolderViewFolder::needsArrange() -{ - return mLastArrangeGeneration < getRoot()->getArrangeGeneration(); -} - -void LLFolderViewFolder::requestSort() -{ - getViewModelItem()->requestSort(); -} - -//TODO RN: get height resetting working -//void LLFolderViewFolder::setPassedFilter(BOOL passed, BOOL passed_folder, S32 filter_generation) -//{ -// // if this folder is now filtered, but wasn't before -// // (it just passed) -// if (passed && !passedFilter(filter_generation)) -// { -// // reset current height, because last time we drew it -// // it might have had more visible items than now -// mCurHeight = 0.f; -// } -// -// LLFolderViewItem::setPassedFilter(passed, passed_folder, filter_generation); -//} - - -// Passes selection information on to children and record selection -// information if necessary. -BOOL LLFolderViewFolder::setSelection(LLFolderViewItem* selection, BOOL openitem, - BOOL take_keyboard_focus) -{ - BOOL rv = FALSE; - if (selection == this) - { - if (!isSelected()) - { - selectItem(); - } - rv = TRUE; - } - else - { - if (isSelected()) - { - deselectItem(); - } - rv = FALSE; - } - BOOL child_selected = FALSE; - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - if((*fit)->setSelection(selection, openitem, take_keyboard_focus)) - { - rv = TRUE; - child_selected = TRUE; - } - } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - if((*iit)->setSelection(selection, openitem, take_keyboard_focus)) - { - rv = TRUE; - child_selected = TRUE; - } - } - if(openitem && child_selected) - { - setOpenArrangeRecursively(TRUE); - } - return rv; -} - -// This method is used to change the selection of an item. -// Recursively traverse all children; if 'selection' is 'this' then change -// the select status if necessary. -// Returns TRUE if the selection state of this folder, or of a child, was changed. -BOOL LLFolderViewFolder::changeSelection(LLFolderViewItem* selection, BOOL selected) -{ - BOOL rv = FALSE; - if(selection == this) - { - if (isSelected() != selected) - { - rv = TRUE; - if (selected) - { - selectItem(); - } - else - { - deselectItem(); - } - } - } - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - if((*fit)->changeSelection(selection, selected)) - { - rv = TRUE; - } - } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - if((*iit)->changeSelection(selection, selected)) - { - rv = TRUE; - } - } - return rv; -} - -LLFolderViewFolder* LLFolderViewFolder::getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse) -{ - if (!item_a->getParentFolder() || !item_b->getParentFolder()) return NULL; - - std::deque item_a_ancestors; - - LLFolderViewFolder* parent = item_a->getParentFolder(); - while(parent) - { - item_a_ancestors.push_back(parent); - parent = parent->getParentFolder(); - } - - std::deque item_b_ancestors; - - parent = item_b->getParentFolder(); - while(parent) - { - item_b_ancestors.push_back(parent); - parent = parent->getParentFolder(); - } - - LLFolderViewFolder* common_ancestor = item_a->getRoot(); - - while(item_a_ancestors.size() > item_b_ancestors.size()) - { - item_a = item_a_ancestors.front(); - item_a_ancestors.pop_front(); - } - - while(item_b_ancestors.size() > item_a_ancestors.size()) - { - item_b = item_b_ancestors.front(); - item_b_ancestors.pop_front(); - } - - while(item_a_ancestors.size()) - { - common_ancestor = item_a_ancestors.front(); - - if (item_a_ancestors.front() == item_b_ancestors.front()) - { - // which came first, sibling a or sibling b? - for (folders_t::iterator it = common_ancestor->mFolders.begin(), end_it = common_ancestor->mFolders.end(); - it != end_it; - ++it) - { - LLFolderViewItem* item = *it; - - if (item == item_a) - { - reverse = false; - return common_ancestor; - } - if (item == item_b) - { - reverse = true; - return common_ancestor; - } - } - - for (items_t::iterator it = common_ancestor->mItems.begin(), end_it = common_ancestor->mItems.end(); - it != end_it; - ++it) - { - LLFolderViewItem* item = *it; - - if (item == item_a) - { - reverse = false; - return common_ancestor; - } - if (item == item_b) - { - reverse = true; - return common_ancestor; - } - } - break; - } - - item_a = item_a_ancestors.front(); - item_a_ancestors.pop_front(); - item_b = item_b_ancestors.front(); - item_b_ancestors.pop_front(); - } - - return NULL; -} - -void LLFolderViewFolder::gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items) -{ - bool selecting = start == NULL; - if (reverse) - { - for (items_t::reverse_iterator it = mItems.rbegin(), end_it = mItems.rend(); - it != end_it; - ++it) - { - if (*it == end) - { - return; - } - if (selecting) - { - items.push_back(*it); - } - - if (*it == start) - { - selecting = true; - } - } - for (folders_t::reverse_iterator it = mFolders.rbegin(), end_it = mFolders.rend(); - it != end_it; - ++it) - { - if (*it == end) - { - return; - } - - if (selecting) - { - items.push_back(*it); - } - - if (*it == start) - { - selecting = true; - } - } - } - else - { - for (folders_t::iterator it = mFolders.begin(), end_it = mFolders.end(); - it != end_it; - ++it) - { - if (*it == end) - { - return; - } - - if (selecting) - { - items.push_back(*it); - } - - if (*it == start) - { - selecting = true; - } - } - for (items_t::iterator it = mItems.begin(), end_it = mItems.end(); - it != end_it; - ++it) - { - if (*it == end) - { - return; - } - - if (selecting) - { - items.push_back(*it); - } - - if (*it == start) - { - selecting = true; - } - } - } -} - -void LLFolderViewFolder::extendSelectionTo(LLFolderViewItem* new_selection) -{ - if (getRoot()->getAllowMultiSelect() == FALSE) return; - - LLFolderViewItem* cur_selected_item = getRoot()->getCurSelectedItem(); - if (cur_selected_item == NULL) - { - cur_selected_item = new_selection; - } - - - bool reverse = false; - LLFolderViewFolder* common_ancestor = getCommonAncestor(cur_selected_item, new_selection, reverse); - if (!common_ancestor) return; - - LLFolderViewItem* last_selected_item_from_cur = cur_selected_item; - LLFolderViewFolder* cur_folder = cur_selected_item->getParentFolder(); - - std::vector items_to_select_forward; - - while(cur_folder != common_ancestor) - { - cur_folder->gatherChildRangeExclusive(last_selected_item_from_cur, NULL, reverse, items_to_select_forward); - - last_selected_item_from_cur = cur_folder; - cur_folder = cur_folder->getParentFolder(); - } - - std::vector items_to_select_reverse; - - LLFolderViewItem* last_selected_item_from_new = new_selection; - cur_folder = new_selection->getParentFolder(); - while(cur_folder != common_ancestor) - { - cur_folder->gatherChildRangeExclusive(last_selected_item_from_new, NULL, !reverse, items_to_select_reverse); - - last_selected_item_from_new = cur_folder; - cur_folder = cur_folder->getParentFolder(); - } - - common_ancestor->gatherChildRangeExclusive(last_selected_item_from_cur, last_selected_item_from_new, reverse, items_to_select_forward); - - for (std::vector::reverse_iterator it = items_to_select_reverse.rbegin(), end_it = items_to_select_reverse.rend(); - it != end_it; - ++it) - { - items_to_select_forward.push_back(*it); - } - - LLFolderView* root = getRoot(); - - for (std::vector::iterator it = items_to_select_forward.begin(), end_it = items_to_select_forward.end(); - it != end_it; - ++it) - { - LLFolderViewItem* item = *it; - if (item->isSelected()) - { - root->removeFromSelectionList(item); - } - else - { - item->selectItem(); - } - root->addToSelectionList(item); - } - - if (new_selection->isSelected()) - { - root->removeFromSelectionList(new_selection); - } - else - { - new_selection->selectItem(); - } - root->addToSelectionList(new_selection); -} - - -void LLFolderViewFolder::destroyView() -{ - std::for_each(mItems.begin(), mItems.end(), DeletePointer()); - mItems.clear(); - - while (!mFolders.empty()) - { - LLFolderViewFolder *folderp = mFolders.back(); - folderp->destroyView(); // removes entry from mFolders - } - - LLFolderViewItem::destroyView(); -} - -// extractItem() removes the specified item from the folder, but -// doesn't delete it. -void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) -{ - items_t::iterator it = std::find(mItems.begin(), mItems.end(), item); - if(it == mItems.end()) - { - // This is an evil downcast. However, it's only doing - // pointer comparison to find if (which it should be ) the - // item is in the container, so it's pretty safe. - LLFolderViewFolder* f = static_cast(item); - folders_t::iterator ft; - ft = std::find(mFolders.begin(), mFolders.end(), f); - if (ft != mFolders.end()) - { - mFolders.erase(ft); - } - } - else - { - mItems.erase(it); - } - //item has been removed, need to update filter - getViewModelItem()->removeChild(item->getViewModelItem()); - getViewModelItem()->dirtyFilter(); - //because an item is going away regardless of filter status, force rearrange - requestArrange(); - removeChild(item); -} - -BOOL LLFolderViewFolder::isMovable() -{ - if( !(getViewModelItem()->isItemMovable()) ) - { - return FALSE; - } - - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - if(!(*iit)->isMovable()) - { - return FALSE; - } - } - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - if(!(*fit)->isMovable()) - { - return FALSE; - } - } - return TRUE; -} - - -BOOL LLFolderViewFolder::isRemovable() -{ - if( !(getViewModelItem()->isItemRemovable()) ) - { - return FALSE; - } - - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - if(!(*iit)->isRemovable()) - { - return FALSE; - } - } - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - if(!(*fit)->isRemovable()) - { - return FALSE; - } - } - return TRUE; -} - -// this is an internal method used for adding items to folders. -BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) -{ - if (item->getParentFolder()) - { - item->getParentFolder()->extractItem(item); - } - item->setParentFolder(this); - - mItems.push_back(item); - - item->setRect(LLRect(0, 0, getRect().getWidth(), 0)); - item->setVisible(FALSE); - - addChild(item); - - item->getViewModelItem()->dirtyFilter(); - - // Handle sorting - requestArrange(); - requestSort(); - - getViewModelItem()->addChild(item->getViewModelItem()); - - //TODO RN - make sort bubble up as long as parent Folder doesn't have anything matching sort criteria - //// Traverse parent folders and update creation date and resort, if necessary - //LLFolderViewFolder* parentp = this; - //while (parentp) - //{ - // if (parentp->mSortFunction.isByDate()) - // { - // // parent folder doesn't have a time stamp yet, so get it from us - // parentp->requestSort(); - // } - - // parentp = parentp->getParentFolder(); - //} - - return TRUE; -} - -// this is an internal method used for adding items to folders. -BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) -{ - if (folder->mParentFolder) - { - folder->mParentFolder->extractItem(folder); - } - folder->mParentFolder = this; - mFolders.push_back(folder); - folder->setOrigin(0, 0); - folder->reshape(getRect().getWidth(), 0); - folder->setVisible(FALSE); - addChild( folder ); - folder->getViewModelItem()->dirtyFilter(); - // rearrange all descendants too, as our indentation level might have changed - folder->requestArrange(); - requestSort(); - - getViewModelItem()->addChild(folder->getViewModelItem()); - - return TRUE; -} - -void LLFolderViewFolder::requestArrange() -{ - mLastArrangeGeneration = -1; - // flag all items up to root - if (mParentFolder) - { - mParentFolder->requestArrange(); - } -} - -void LLFolderViewFolder::toggleOpen() -{ - setOpen(!isOpen()); -} - -// Force a folder open or closed -void LLFolderViewFolder::setOpen(BOOL openitem) -{ - setOpenArrangeRecursively(openitem); -} - -void LLFolderViewFolder::setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse) -{ - BOOL was_open = isOpen(); - mIsOpen = openitem; - if(!was_open && openitem) - { - getViewModelItem()->openItem(); - } - else if(was_open && !openitem) - { - getViewModelItem()->closeItem(); - } - - if (recurse == RECURSE_DOWN || recurse == RECURSE_UP_DOWN) - { - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->setOpenArrangeRecursively(openitem, RECURSE_DOWN); /* Flawfinder: ignore */ - } - } - if (mParentFolder - && (recurse == RECURSE_UP - || recurse == RECURSE_UP_DOWN)) - { - mParentFolder->setOpenArrangeRecursively(openitem, RECURSE_UP); - } - - if (was_open != isOpen()) - { - requestArrange(); - } -} - -BOOL LLFolderViewFolder::handleDragAndDropFromChild(MASK mask, - BOOL drop, - EDragAndDropType c_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg) -{ - BOOL accepted = mViewModelItem->dragOrDrop(mask,drop,c_type,cargo_data, tooltip_msg); - if (accepted) - { - mDragAndDropTarget = TRUE; - *accept = ACCEPT_YES_MULTI; - } - else - { - *accept = ACCEPT_NO; - } - - // drag and drop to child item, so clear pending auto-opens - getRoot()->autoOpenTest(NULL); - - return TRUE; -} - -void LLFolderViewFolder::openItem( void ) -{ - toggleOpen(); -} - -void LLFolderViewFolder::applyFunctorToChildren(LLFolderViewFunctor& functor) -{ - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - functor.doItem((*fit)); - } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - functor.doItem((*iit)); - } -} - -void LLFolderViewFolder::applyFunctorRecursively(LLFolderViewFunctor& functor) -{ - functor.doFolder(this); - - for (folders_t::iterator iter = mFolders.begin(); - iter != mFolders.end();) - { - folders_t::iterator fit = iter++; - (*fit)->applyFunctorRecursively(functor); - } - for (items_t::iterator iter = mItems.begin(); - iter != mItems.end();) - { - items_t::iterator iit = iter++; - functor.doItem((*iit)); - } -} - -// LLView functionality -BOOL LLFolderViewFolder::handleDragAndDrop(S32 x, S32 y, MASK mask, - BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg) -{ - BOOL handled = FALSE; - - if (isOpen()) - { - handled = (childrenHandleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg) != NULL); - } - - if (!handled) - { - handleDragAndDropToThisFolder(mask, drop, cargo_type, cargo_data, accept, tooltip_msg); - - lldebugst(LLERR_USER_INPUT) << "dragAndDrop handled by LLFolderViewFolder" << llendl; - } - - return TRUE; -} - -BOOL LLFolderViewFolder::handleDragAndDropToThisFolder(MASK mask, - BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg) -{ - BOOL accepted = getViewModelItem()->dragOrDrop(mask,drop,cargo_type,cargo_data, tooltip_msg); - - if (accepted) - { - mDragAndDropTarget = TRUE; - *accept = ACCEPT_YES_MULTI; - } - else - { - *accept = ACCEPT_NO; - } - - if (!drop && accepted) - { - getRoot()->autoOpenTest(this); - } - - return TRUE; -} - - -BOOL LLFolderViewFolder::handleRightMouseDown( S32 x, S32 y, MASK mask ) -{ - BOOL handled = FALSE; - - if( isOpen() ) - { - handled = childrenHandleRightMouseDown( x, y, mask ) != NULL; - } - if (!handled) - { - handled = LLFolderViewItem::handleRightMouseDown( x, y, mask ); - } - return handled; -} - - -BOOL LLFolderViewFolder::handleHover(S32 x, S32 y, MASK mask) -{ - mIsMouseOverTitle = (y > (getRect().getHeight() - mItemHeight)); - - BOOL handled = LLView::handleHover(x, y, mask); - - if (!handled) - { - // this doesn't do child processing - handled = LLFolderViewItem::handleHover(x, y, mask); - } - - return handled; -} - -BOOL LLFolderViewFolder::handleMouseDown( S32 x, S32 y, MASK mask ) -{ - BOOL handled = FALSE; - if( isOpen() ) - { - handled = childrenHandleMouseDown(x,y,mask) != NULL; - } - if( !handled ) - { - if(mIndentation < x && x < mIndentation + ARROW_SIZE + TEXT_PAD) - { - toggleOpen(); - handled = TRUE; - } - else - { - // do normal selection logic - handled = LLFolderViewItem::handleMouseDown(x, y, mask); - } - } - - return handled; -} - -BOOL LLFolderViewFolder::handleDoubleClick( S32 x, S32 y, MASK mask ) -{ - BOOL handled = FALSE; - if( isOpen() ) - { - handled = childrenHandleDoubleClick( x, y, mask ) != NULL; - } - if( !handled ) - { - if(mIndentation < x && x < mIndentation + ARROW_SIZE + TEXT_PAD) - { - // don't select when user double-clicks plus sign - // so as not to contradict single-click behavior - toggleOpen(); - } - else - { - getRoot()->setSelection(this, FALSE); - toggleOpen(); - } - handled = TRUE; - } - return handled; -} - -void LLFolderViewFolder::draw() -{ - if (mAutoOpenCountdown != 0.f) - { - mControlLabelRotation = mAutoOpenCountdown * -90.f; - } - else if (isOpen()) - { - mControlLabelRotation = lerp(mControlLabelRotation, -90.f, LLCriticalDamp::getInterpolant(0.04f)); - } - else - { - mControlLabelRotation = lerp(mControlLabelRotation, 0.f, LLCriticalDamp::getInterpolant(0.025f)); - } - - LLFolderViewItem::draw(); - - // draw children if root folder, or any other folder that is open or animating to closed state - if( getRoot() == this || (isOpen() || mCurHeight != mTargetHeight )) - { - LLView::draw(); - } - - mExpanderHighlighted = FALSE; -} - -// this does prefix traversal, as folders are listed above their contents -LLFolderViewItem* LLFolderViewFolder::getNextFromChild( LLFolderViewItem* item, BOOL include_children ) -{ - BOOL found_item = FALSE; - - LLFolderViewItem* result = NULL; - // when not starting from a given item, start at beginning - if(item == NULL) - { - found_item = TRUE; - } - - // find current item among children - folders_t::iterator fit = mFolders.begin(); - folders_t::iterator fend = mFolders.end(); - - items_t::iterator iit = mItems.begin(); - items_t::iterator iend = mItems.end(); - - // if not trivially starting at the beginning, we have to find the current item - if (!found_item) - { - // first, look among folders, since they are always above items - for(; fit != fend; ++fit) - { - if(item == (*fit)) - { - found_item = TRUE; - // if we are on downwards traversal - if (include_children && (*fit)->isOpen()) - { - // look for first descendant - return (*fit)->getNextFromChild(NULL, TRUE); - } - // otherwise advance to next folder - ++fit; - include_children = TRUE; - break; - } - } - - // didn't find in folders? Check items... - if (!found_item) - { - for(; iit != iend; ++iit) - { - if(item == (*iit)) - { - found_item = TRUE; - // point to next item - ++iit; - break; - } - } - } - } - - if (!found_item) - { - // you should never call this method with an item that isn't a child - // so we should always find something - llassert(FALSE); - return NULL; - } - - // at this point, either iit or fit point to a candidate "next" item - // if both are out of range, we need to punt up to our parent - - // now, starting from found folder, continue through folders - // searching for next visible folder - while(fit != fend && !(*fit)->getVisible()) - { - // turn on downwards traversal for next folder - ++fit; - } - - if (fit != fend) - { - result = (*fit); - } - else - { - // otherwise, scan for next visible item - while(iit != iend && !(*iit)->getVisible()) - { - ++iit; - } - - // check to see if we have a valid item - if (iit != iend) - { - result = (*iit); - } - } - - if( !result && mParentFolder ) - { - // If there are no siblings or children to go to, recurse up one level in the tree - // and skip children for this folder, as we've already discounted them - result = mParentFolder->getNextFromChild(this, FALSE); - } - - return result; -} - -// this does postfix traversal, as folders are listed above their contents -LLFolderViewItem* LLFolderViewFolder::getPreviousFromChild( LLFolderViewItem* item, BOOL include_children ) -{ - BOOL found_item = FALSE; - - LLFolderViewItem* result = NULL; - // when not starting from a given item, start at end - if(item == NULL) - { - found_item = TRUE; - } - - // find current item among children - folders_t::reverse_iterator fit = mFolders.rbegin(); - folders_t::reverse_iterator fend = mFolders.rend(); - - items_t::reverse_iterator iit = mItems.rbegin(); - items_t::reverse_iterator iend = mItems.rend(); - - // if not trivially starting at the end, we have to find the current item - if (!found_item) - { - // first, look among items, since they are always below the folders - for(; iit != iend; ++iit) - { - if(item == (*iit)) - { - found_item = TRUE; - // point to next item - ++iit; - break; - } - } - - // didn't find in items? Check folders... - if (!found_item) - { - for(; fit != fend; ++fit) - { - if(item == (*fit)) - { - found_item = TRUE; - // point to next folder - ++fit; - break; - } - } - } - } - - if (!found_item) - { - // you should never call this method with an item that isn't a child - // so we should always find something - llassert(FALSE); - return NULL; - } - - // at this point, either iit or fit point to a candidate "next" item - // if both are out of range, we need to punt up to our parent - - // now, starting from found item, continue through items - // searching for next visible item - while(iit != iend && !(*iit)->getVisible()) - { - ++iit; - } - - if (iit != iend) - { - // we found an appropriate item - result = (*iit); - } - else - { - // otherwise, scan for next visible folder - while(fit != fend && !(*fit)->getVisible()) - { - ++fit; - } - - // check to see if we have a valid folder - if (fit != fend) - { - // try selecting child element of this folder - if ((*fit)->isOpen()) - { - result = (*fit)->getPreviousFromChild(NULL); - } - else - { - result = (*fit); - } - } - } - - if( !result ) - { - // If there are no siblings or children to go to, recurse up one level in the tree - // which gets back to this folder, which will only be visited if it is a valid, visible item - result = this; - } - - return result; -} - diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h deleted file mode 100644 index 92923e82da..0000000000 --- a/indra/newview/llfolderviewitem.h +++ /dev/null @@ -1,418 +0,0 @@ -/** -* @file llfolderviewitem.h -* @brief Items and folders that can appear in a hierarchical folder view -* -* $LicenseInfo:firstyear=2001&license=viewerlgpl$ -* Second Life Viewer Source Code -* Copyright (C) 2010, Linden Research, Inc. -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU Lesser General Public -* License as published by the Free Software Foundation; -* version 2.1 of the License only. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public -* License along with this library; if not, write to the Free Software -* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -* -* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA -* $/LicenseInfo$ -*/ -#ifndef LLFOLDERVIEWITEM_H -#define LLFOLDERVIEWITEM_H - -#include "llview.h" -#include "lluiimage.h" - -class LLFolderView; -class LLFolderViewModelItem; -class LLFolderViewFolder; -class LLFolderViewFunctor; -class LLFolderViewFilter; -class LLFolderViewModelInterface; - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -// Class LLFolderViewItem -// -// An instance of this class represents a single item in a folder view -// such as an inventory item or a file. -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -class LLFolderViewItem : public LLView -{ -public: - static void initClass(); - static void cleanupClass(); - - struct Params : public LLInitParam::Block - { - Optional folder_arrow_image, - selection_image; - Optional root; - Mandatory listener; - - Optional folder_indentation, // pixels - item_height, - item_top_pad; - - Optional creation_date; - - Params(); - }; - - // layout constants - static const S32 LEFT_PAD = 5; - // LEFT_INDENTATION is set via folder_indentation above - static const S32 ICON_PAD = 2; - static const S32 ICON_WIDTH = 16; - static const S32 TEXT_PAD = 1; - static const S32 TEXT_PAD_RIGHT = 4; - static const S32 ARROW_SIZE = 12; - static const S32 MAX_FOLDER_ITEM_OVERLAP = 2; - // animation parameters - static const F32 FOLDER_CLOSE_TIME_CONSTANT; - static const F32 FOLDER_OPEN_TIME_CONSTANT; - -private: - BOOL mIsSelected; - -protected: - friend class LLUICtrlFactory; - friend class LLFolderViewModelItem; - - LLFolderViewItem(const Params& p); - - std::string mLabel; - S32 mLabelWidth; - bool mLabelWidthDirty; - LLFolderViewFolder* mParentFolder; - LLFolderViewModelItem* mViewModelItem; - BOOL mIsCurSelection; - BOOL mSelectPending; - LLFontGL::StyleFlags mLabelStyle; - std::string mLabelSuffix; - LLUIImagePtr mIcon; - LLUIImagePtr mIconOpen; - LLUIImagePtr mIconOverlay; - BOOL mHasVisibleChildren; - S32 mIndentation; - S32 mItemHeight; - - //TODO RN: create interface for string highlighting - //std::string::size_type mStringMatchOffset; - F32 mControlLabelRotation; - LLFolderView* mRoot; - BOOL mDragAndDropTarget; - bool mIsMouseOverTitle; - - // this is an internal method used for adding items to folders. A - // no-op at this level, but reimplemented in derived classes. - virtual BOOL addItem(LLFolderViewItem*) { return FALSE; } - virtual BOOL addFolder(LLFolderViewFolder*) { return FALSE; } - - static LLFontGL* getLabelFontForStyle(U8 style); - -public: - BOOL postBuild(); - - virtual void openItem( void ); - - void arrangeAndSet(BOOL set_selection, BOOL take_keyboard_focus); - - virtual ~LLFolderViewItem( void ); - - // addToFolder() returns TRUE if it succeeds. FALSE otherwise - virtual BOOL addToFolder(LLFolderViewFolder* folder); - - // Finds width and height of this object and it's children. Also - // makes sure that this view and it's children are the right size. - virtual S32 arrange( S32* width, S32* height ); - virtual S32 getItemHeight(); - - // If 'selection' is 'this' then note that otherwise ignore. - // Returns TRUE if this item ends up being selected. - virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus); - - // This method is used to set the selection state of an item. - // If 'selection' is 'this' then note selection. - // Returns TRUE if the selection state of this item was changed. - virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); - - // this method is used to deselect this element - void deselectItem(); - - // this method is used to select this element - virtual void selectItem(); - - // gets multiple-element selection - virtual std::set getSelectionList() const; - - // Returns true is this object and all of its children can be removed (deleted by user) - virtual BOOL isRemovable(); - - // Returns true is this object and all of its children can be moved - virtual BOOL isMovable(); - - // destroys this item recursively - virtual void destroyView(); - - BOOL isSelected() const { return mIsSelected; } - - void setUnselected() { mIsSelected = FALSE; } - - void setIsCurSelection(BOOL select) { mIsCurSelection = select; } - - BOOL getIsCurSelection() { return mIsCurSelection; } - - BOOL hasVisibleChildren() { return mHasVisibleChildren; } - - // Call through to the viewed object and return true if it can be - // removed. Returns true if it's removed. - //virtual BOOL removeRecursively(BOOL single_item); - BOOL remove(); - - // Build an appropriate context menu for the item. Flags unused. - void buildContextMenu(class LLMenuGL& menu, U32 flags); - - // This method returns the actual name of the thing being - // viewed. This method will ask the viewed object itself. - const std::string& getName( void ) const; - - // This method returns the label displayed on the view. This - // method was primarily added to allow sorting on the folder - // contents possible before the entire view has been constructed. - const std::string& getLabel() const { return mLabel; } - - - LLFolderViewFolder* getParentFolder( void ) { return mParentFolder; } - const LLFolderViewFolder* getParentFolder( void ) const { return mParentFolder; } - - void setParentFolder(LLFolderViewFolder* parent) { mParentFolder = parent; } - - LLFolderViewItem* getNextOpenNode( BOOL include_children = TRUE ); - LLFolderViewItem* getPreviousOpenNode( BOOL include_children = TRUE ); - - const LLFolderViewModelItem* getViewModelItem( void ) const { return mViewModelItem; } - LLFolderViewModelItem* getViewModelItem( void ) { return mViewModelItem; } - - const LLFolderViewModelInterface* getFolderViewModel( void ) const; - LLFolderViewModelInterface* getFolderViewModel( void ); - - // just rename the object. - void rename(const std::string& new_name); - - - // Show children (unfortunate that this is called "open") - virtual void setOpen(BOOL open = TRUE) {}; - virtual BOOL isOpen() const { return FALSE; } - - virtual LLFolderView* getRoot(); - virtual const LLFolderView* getRoot() const; - BOOL isDescendantOf( const LLFolderViewFolder* potential_ancestor ); - S32 getIndentation() { return mIndentation; } - - virtual BOOL passedFilter(S32 filter_generation = -1); - - // refresh information from the object being viewed. - virtual void refresh(); - - // LLView functionality - virtual BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); - virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask ); - virtual BOOL handleHover( S32 x, S32 y, MASK mask ); - virtual BOOL handleMouseUp( S32 x, S32 y, MASK mask ); - virtual BOOL handleDoubleClick( S32 x, S32 y, MASK mask ); - - virtual void onMouseLeave(S32 x, S32 y, MASK mask); - - virtual LLView* findChildView(const std::string& name, BOOL recurse) const { return NULL; } - - // virtual void handleDropped(); - virtual void draw(); - virtual BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg); - -private: - static std::map sFonts; // map of styles to fonts -}; - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -// Class LLFolderViewFolder -// -// An instance of an LLFolderViewFolder represents a collection of -// more folders and items. This is used to build the hierarchy of -// items found in the folder view. -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -class LLFolderViewFolder : public LLFolderViewItem -{ -protected: - LLFolderViewFolder( const LLFolderViewItem::Params& ); - friend class LLUICtrlFactory; - -public: - - typedef std::list items_t; - typedef std::list folders_t; - -protected: - items_t mItems; - folders_t mFolders; - - BOOL mIsOpen; - BOOL mExpanderHighlighted; - F32 mCurHeight; - F32 mTargetHeight; - F32 mAutoOpenCountdown; - S32 mLastArrangeGeneration; - S32 mLastCalculatedWidth; - S32 mMostFilteredDescendantGeneration; - bool mNeedsSort; - -public: - typedef enum e_recurse_type - { - RECURSE_NO, - RECURSE_UP, - RECURSE_DOWN, - RECURSE_UP_DOWN - } ERecurseType; - - - virtual ~LLFolderViewFolder( void ); - - LLFolderViewItem* getNextFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); - LLFolderViewItem* getPreviousFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); - - // addToFolder() returns TRUE if it succeeds. FALSE otherwise - virtual BOOL addToFolder(LLFolderViewFolder* folder); - - // Finds width and height of this object and it's children. Also - // makes sure that this view and it's children are the right size. - virtual S32 arrange( S32* width, S32* height ); - - BOOL needsArrange(); - - bool descendantsPassedFilter(S32 filter_generation = -1); - - // Passes selection information on to children and record - // selection information if necessary. - // Returns TRUE if this object (or a child) ends up being selected. - // If 'openitem' is TRUE then folders are opened up along the way to the selection. - virtual BOOL setSelection(LLFolderViewItem* selection, BOOL openitem, BOOL take_keyboard_focus = TRUE); - - // This method is used to change the selection of an item. - // Recursively traverse all children; if 'selection' is 'this' then change - // the select status if necessary. - // Returns TRUE if the selection state of this folder, or of a child, was changed. - virtual BOOL changeSelection(LLFolderViewItem* selection, BOOL selected); - - // this method is used to group select items - void extendSelectionTo(LLFolderViewItem* selection); - - // Returns true is this object and all of its children can be removed. - virtual BOOL isRemovable(); - - // Returns true is this object and all of its children can be moved - virtual BOOL isMovable(); - - // destroys this folder, and all children - virtual void destroyView(); - - // If this folder can be removed, remove all children that can be - // removed, return TRUE if this is empty after the operation and - // it's viewed folder object can be removed. - //virtual BOOL removeRecursively(BOOL single_item); - //virtual BOOL remove(); - - // extractItem() removes the specified item from the folder, but - // doesn't delete it. - virtual void extractItem( LLFolderViewItem* item ); - - // This function is called by a child that needs to be resorted. - void resort(LLFolderViewItem* item); - - void setAutoOpenCountdown(F32 countdown) { mAutoOpenCountdown = countdown; } - - // folders can be opened. This will usually be called by internal - // methods. - virtual void toggleOpen(); - - // Force a folder open or closed - virtual void setOpen(BOOL openitem = TRUE); - - // Called when a child is refreshed. - virtual void requestArrange(); - - virtual void requestSort(); - - // internal method which doesn't update the entire view. This - // method was written because the list iterators destroy the state - // of other iterations, thus, we can't arrange while iterating - // through the children (such as when setting which is selected. - virtual void setOpenArrangeRecursively(BOOL openitem, ERecurseType recurse = RECURSE_NO); - - // Get the current state of the folder. - virtual BOOL isOpen() const { return mIsOpen; } - - // special case if an object is dropped on the child. - BOOL handleDragAndDropFromChild(MASK mask, - BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg); - - void applyFunctorRecursively(LLFolderViewFunctor& functor); - - // Just apply this functor to the folder's immediate children. - void applyFunctorToChildren(LLFolderViewFunctor& functor); - - virtual void openItem( void ); - virtual BOOL addItem(LLFolderViewItem* item); - virtual BOOL addFolder( LLFolderViewFolder* folder); - - // LLView functionality - virtual BOOL handleHover(S32 x, S32 y, MASK mask); - virtual BOOL handleRightMouseDown( S32 x, S32 y, MASK mask ); - virtual BOOL handleMouseDown( S32 x, S32 y, MASK mask ); - virtual BOOL handleDoubleClick( S32 x, S32 y, MASK mask ); - virtual BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg); - BOOL handleDragAndDropToThisFolder(MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - EAcceptance* accept, - std::string& tooltip_msg); - virtual void draw(); - - folders_t::iterator getFoldersBegin() { return mFolders.begin(); } - folders_t::iterator getFoldersEnd() { return mFolders.end(); } - folders_t::size_type getFoldersCount() const { return mFolders.size(); } - - items_t::const_iterator getItemsBegin() const { return mItems.begin(); } - items_t::const_iterator getItemsEnd() const { return mItems.end(); } - items_t::size_type getItemsCount() const { return mItems.size(); } - - LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse); - void gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items); - -public: - //WARNING: do not call directly...use the appropriate LLFolderViewModel-derived class instead - template void sortFolders(const SORT_FUNC& func) { mFolders.sort(func); } - template void sortItems(const SORT_FUNC& func) { mItems.sort(func); } -}; - - -#endif // LLFOLDERVIEWITEM_H diff --git a/indra/newview/llfolderviewmodel.cpp b/indra/newview/llfolderviewmodel.cpp deleted file mode 100644 index ca6225aca7..0000000000 --- a/indra/newview/llfolderviewmodel.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/** - * @file llfolderviewmodel.cpp - * @brief Implementation of the view model collection of classes. - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#include "llviewerprecompiledheaders.h" - -#include "llfolderviewmodel.h" -#include "lltrans.h" - -bool LLFolderViewModelCommon::needsSort(LLFolderViewModelItem* item) -{ - return item->getSortVersion() < mTargetSortVersion; -} - -std::string LLFolderViewModelCommon::getStatusText() -{ - if (!contentsReady() || mFolderView->getViewModelItem()->getLastFilterGeneration() < getFilter()->getCurrentGeneration()) - { - return LLTrans::getString("Searching"); - } - else - { - return getFilter()->getEmptyLookupMessage(); - } -} - -void LLFolderViewModelCommon::filter() -{ - getFilter()->setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); - mFolderView->getViewModelItem()->filter(*getFilter()); -} diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h deleted file mode 100644 index 079409c2a4..0000000000 --- a/indra/newview/llfolderviewmodel.h +++ /dev/null @@ -1,357 +0,0 @@ -/** - * @file llfolderviewmodel.h - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ -#ifndef LLFOLDERVIEWMODEL_H -#define LLFOLDERVIEWMODEL_H - -#include "llfontgl.h" // just for StyleFlags enum -#include "llfolderview.h" - -// These are grouping of inventory types. -// Order matters when sorting system folders to the top. -enum EInventorySortGroup -{ - SG_SYSTEM_FOLDER, - SG_TRASH_FOLDER, - SG_NORMAL_FOLDER, - SG_ITEM -}; - -class LLFontGL; -class LLInventoryModel; -class LLMenuGL; -class LLUIImage; -class LLUUID; -class LLFolderViewItem; -class LLFolderViewFolder; - -class LLFolderViewFilter -{ -public: - enum EFilterModified - { - FILTER_NONE, // nothing to do, already filtered - FILTER_RESTART, // restart filtering from scratch - FILTER_LESS_RESTRICTIVE, // existing filtered items will certainly pass this filter - FILTER_MORE_RESTRICTIVE // if you didn't pass the previous filter, you definitely won't pass this one - }; - -public: - - LLFolderViewFilter() {} - virtual ~LLFolderViewFilter() {} - - // +-------------------------------------------------------------------+ - // + Execution And Results - // +-------------------------------------------------------------------+ - virtual bool check(const LLFolderViewModelItem* item) = 0; - virtual bool check(const LLInventoryItem* item) = 0; - virtual bool checkFolder(const LLFolderViewModelItem* folder) const = 0; - virtual bool checkFolder(const LLUUID& folder_id) const = 0; - - virtual void setEmptyLookupMessage(const std::string& message) = 0; - virtual std::string getEmptyLookupMessage() const = 0; - - virtual bool showAllResults() const = 0; - - // +-------------------------------------------------------------------+ - // + Status - // +-------------------------------------------------------------------+ - virtual bool isActive() const = 0; - virtual bool isModified() const = 0; - virtual void clearModified() = 0; - virtual const std::string& getName() const = 0; - virtual const std::string& getFilterText() = 0; - //RN: this is public to allow system to externally force a global refilter - virtual void setModified(EFilterModified behavior = FILTER_RESTART) = 0; - - // +-------------------------------------------------------------------+ - // + Count - // +-------------------------------------------------------------------+ - virtual void setFilterCount(S32 count) = 0; - virtual S32 getFilterCount() const = 0; - virtual void decrementFilterCount() = 0; - - // +-------------------------------------------------------------------+ - // + Default - // +-------------------------------------------------------------------+ - virtual bool isDefault() const = 0; - virtual bool isNotDefault() const = 0; - virtual void markDefault() = 0; - virtual void resetDefault() = 0; - - // +-------------------------------------------------------------------+ - // + Generation - // +-------------------------------------------------------------------+ - virtual S32 getCurrentGeneration() const = 0; - virtual S32 getFirstSuccessGeneration() const = 0; - virtual S32 getFirstRequiredGeneration() const = 0; -}; - -class LLFolderViewModelInterface -{ -public: - virtual void requestSortAll() = 0; - - virtual void sort(class LLFolderViewFolder*) = 0; - virtual void filter() = 0; - - virtual bool contentsReady() = 0; - virtual void setFolderView(LLFolderView* folder_view) = 0; - virtual LLFolderViewFilter* getFilter() = 0; - virtual const LLFolderViewFilter* getFilter() const = 0; - virtual std::string getStatusText() = 0; -}; - -class LLFolderViewModelCommon : public LLFolderViewModelInterface -{ -public: - LLFolderViewModelCommon() - : mTargetSortVersion(0), - mFolderView(NULL) - {} - - virtual void requestSortAll() - { - // sort everything - mTargetSortVersion++; - } - virtual std::string getStatusText(); - virtual void filter(); - - void setFolderView(LLFolderView* folder_view) { mFolderView = folder_view;} - -protected: - bool needsSort(class LLFolderViewModelItem* item); - - S32 mTargetSortVersion; - LLFolderView* mFolderView; - -}; - -template -class LLFolderViewModel : public LLFolderViewModelCommon -{ -public: - LLFolderViewModel(){} - virtual ~LLFolderViewModel() {} - - typedef SORT_TYPE SortType; - typedef ITEM_TYPE ItemType; - typedef FOLDER_TYPE FolderType; - typedef FILTER_TYPE FilterType; - - virtual SortType& getSorter() { return mSorter; } - virtual const SortType& getSorter() const { return mSorter; } - virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } - - virtual FilterType* getFilter() { return &mFilter; } - virtual const FilterType* getFilter() const { return &mFilter; } - virtual void setFilter(const FilterType& filter) { mFilter = filter; } - - // TODO RN: remove this and put all filtering logic in view model - // add getStatusText and isFiltering() - virtual bool contentsReady() { return true; } - - - struct ViewModelCompare - { - ViewModelCompare(const SortType& sorter) - : mSorter(sorter) - {} - - bool operator () (const LLFolderViewItem* a, const LLFolderViewItem* b) const - { - return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); - } - - bool operator () (const LLFolderViewFolder* a, const LLFolderViewFolder* b) const - { - return mSorter(static_cast(a->getViewModelItem()), static_cast(b->getViewModelItem())); - } - - const SortType& mSorter; - }; - - void sort(LLFolderViewFolder* folder) - { - if (needsSort(folder->getViewModelItem())) - { - folder->sortFolders(ViewModelCompare(getSorter())); - folder->sortItems(ViewModelCompare(getSorter())); - folder->getViewModelItem()->setSortVersion(mTargetSortVersion); - folder->requestArrange(); - } - } - -protected: - SortType mSorter; - FilterType mFilter; -}; - -// This is am abstract base class that users of the folderview classes -// would use to bridge the folder view with the underlying data -class LLFolderViewModelItem -{ -public: - virtual ~LLFolderViewModelItem( void ) {}; - - virtual void update() {} //called when drawing - virtual const std::string& getName() const = 0; - virtual const std::string& getDisplayName() const = 0; - virtual const std::string& getSearchableName() const = 0; - - virtual LLPointer getIcon() const = 0; - virtual LLPointer getIconOpen() const { return getIcon(); } - virtual LLPointer getIconOverlay() const { return NULL; } - - virtual LLFontGL::StyleFlags getLabelStyle() const = 0; - virtual std::string getLabelSuffix() const = 0; - - virtual void openItem( void ) = 0; - virtual void closeItem( void ) = 0; - virtual void selectItem(void) = 0; - - virtual BOOL isItemRenameable() const = 0; - virtual BOOL renameItem(const std::string& new_name) = 0; - - virtual BOOL isItemMovable( void ) const = 0; // Can be moved to another folder - virtual void move( LLFolderViewModelItem* parent_listener ) = 0; - - virtual BOOL isItemRemovable( void ) const = 0; // Can be destroyed - virtual BOOL removeItem() = 0; - virtual void removeBatch(std::vector& batch) = 0; - - virtual BOOL isItemCopyable() const = 0; - virtual BOOL copyToClipboard() const = 0; - virtual BOOL cutToClipboard() const = 0; - - virtual BOOL isClipboardPasteable() const = 0; - virtual void pasteFromClipboard() = 0; - virtual void pasteLinkFromClipboard() = 0; - - virtual void buildContextMenu(LLMenuGL& menu, U32 flags) = 0; - - virtual bool potentiallyVisible() = 0; // is the item definitely visible or we haven't made up our minds yet? - - virtual bool filter( LLFolderViewFilter& filter) = 0; - virtual bool passedFilter(S32 filter_generation = -1) = 0; - virtual bool descendantsPassedFilter(S32 filter_generation = -1) = 0; - virtual void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) = 0; - virtual void dirtyFilter() = 0; - - virtual S32 getLastFilterGeneration() const = 0; - - // This method should be called when a drag begins. returns TRUE - // if the drag can begin, otherwise FALSE. - virtual LLToolDragAndDrop::ESource getDragSource() const = 0; - virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; - - virtual bool hasChildren() const = 0; - virtual void addChild(LLFolderViewModelItem* child) = 0; - virtual void removeChild(LLFolderViewModelItem* child) = 0; - - // This method will be called to determine if a drop can be - // performed, and will set drop to TRUE if a drop is - // requested. Returns TRUE if a drop is possible/happened, - // otherwise FALSE. - virtual BOOL dragOrDrop(MASK mask, BOOL drop, - EDragAndDropType cargo_type, - void* cargo_data, - std::string& tooltip_msg) = 0; - - virtual void requestSort() = 0; - virtual S32 getSortVersion() = 0; - virtual void setSortVersion(S32 version) = 0; - virtual void setParent(LLFolderViewModelItem* parent) = 0; - -protected: - - friend class LLFolderViewItem; - virtual void setFolderViewItem(LLFolderViewItem* folder_view_item) = 0; - -}; - -class LLFolderViewModelItemCommon : public LLFolderViewModelItem -{ -public: - LLFolderViewModelItemCommon() - : mSortVersion(-1), - mPassedFilter(true), - mPassedFolderFilter(true), - mFolderViewItem(NULL), - mLastFilterGeneration(-1), - mMostFilteredDescendantGeneration(-1), - mParent(NULL) - { - std::for_each(mChildren.begin(), mChildren.end(), DeletePointer()); - } - - void requestSort() { mSortVersion = -1; } - S32 getSortVersion() { return mSortVersion; } - void setSortVersion(S32 version) { mSortVersion = version;} - - S32 getLastFilterGeneration() const { return mLastFilterGeneration; } - void dirtyFilter() - { - mLastFilterGeneration = -1; - - // bubble up dirty flag all the way to root - if (mParent) - { - mParent->dirtyFilter(); - } - } - virtual void addChild(LLFolderViewModelItem* child) - { - mChildren.push_back(child); - child->setParent(this); - } - virtual void removeChild(LLFolderViewModelItem* child) - { - mChildren.remove(child); - child->setParent(NULL); - } - -protected: - virtual void setParent(LLFolderViewModelItem* parent) { mParent = parent; } - - S32 mSortVersion; - bool mPassedFilter; - bool mPassedFolderFilter; - - S32 mLastFilterGeneration; - S32 mMostFilteredDescendantGeneration; - - - typedef std::list child_list_t; - child_list_t mChildren; - LLFolderViewModelItem* mParent; - - void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;} - LLFolderViewItem* mFolderViewItem; -}; - - -#endif // LLFOLDERVIEWMODEL_H diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index 99831c61bf..d23b4af8cb 100644 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -28,12 +28,38 @@ #include "llfolderviewmodelinventory.h" #include "llinventorymodelbackgroundfetch.h" #include "llinventorypanel.h" +#include "lltooldraganddrop.h" // // class LLFolderViewModelInventory // static LLFastTimer::DeclareTimer FTM_INVENTORY_SORT("Sort"); +bool LLFolderViewModelInventory::startDrag(std::vector& items) +{ + std::vector types; + uuid_vec_t cargo_ids; + std::vector::iterator item_it; + bool can_drag = true; + if (!items.empty()) + { + for (item_it = items.begin(); item_it != items.end(); ++item_it) + { + EDragAndDropType type = DAD_NONE; + LLUUID id = LLUUID::null; + can_drag = can_drag && static_cast(*item_it)->startDrag(&type, &id); + + types.push_back(type); + cargo_ids.push_back(id); + } + + LLToolDragAndDrop::getInstance()->beginMultiDrag(types, cargo_ids, + static_cast(items.front())->getDragSource(), mTaskID); + } + return can_drag; +} + + void LLFolderViewModelInventory::sort( LLFolderViewFolder* folder ) { LLFastTimer _(FTM_INVENTORY_SORT); diff --git a/indra/newview/llfolderviewmodelinventory.h b/indra/newview/llfolderviewmodelinventory.h index a8fe3f57ea..12a977b28b 100644 --- a/indra/newview/llfolderviewmodelinventory.h +++ b/indra/newview/llfolderviewmodelinventory.h @@ -29,6 +29,9 @@ #define LL_LLFOLDERVIEWMODELINVENTORY_H #include "llinventoryfilter.h" +#include "llinventory.h" +#include "llwearabletype.h" +#include "lltooldraganddrop.h" class LLFolderViewModelItemInventory : public LLFolderViewModelItemCommon @@ -62,6 +65,10 @@ public: virtual void setPassedFilter(bool filtered, bool filtered_folder, S32 filter_generation); virtual bool filter( LLFolderViewFilter& filter); virtual bool filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); + + virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; + virtual LLToolDragAndDrop::ESource getDragSource() const = 0; + protected: class LLFolderViewModelInventory* mRootViewModel; }; @@ -97,11 +104,13 @@ class LLFolderViewModelInventory public: typedef LLFolderViewModel base_t; - virtual ~LLFolderViewModelInventory() {} + void setTaskID(const LLUUID& id) {mTaskID = id;} void sort(LLFolderViewFolder* folder); - bool contentsReady(); + bool startDrag(std::vector& items); +private: + LLUUID mTaskID; }; #endif // LL_LLFOLDERVIEWMODELINVENTORY_H diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h index 9615f3f44d..f68cf07d8c 100644 --- a/indra/newview/llimfloatercontainer.h +++ b/indra/newview/llimfloatercontainer.h @@ -65,8 +65,6 @@ public: virtual const std::string& getSearchableName() const { return mName; } virtual const LLUUID& getUUID() const { return mUUID; } virtual time_t getCreationDate() const { return 0; } - virtual PermissionMask getPermissionMask() const { return PERM_ALL; } - virtual LLFolderType::EType getPreferredType() const { return LLFolderType::FT_NONE; } virtual LLPointer getIcon() const { return NULL; } virtual LLPointer getOpenIcon() const { return getIcon(); } virtual LLFontGL::StyleFlags getLabelStyle() const { return LLFontGL::NORMAL; } @@ -88,8 +86,6 @@ public: virtual void buildContextMenu(LLMenuGL& menu, U32 flags) { } virtual BOOL isUpToDate() const { return TRUE; } virtual bool hasChildren() const { return FALSE; } - virtual LLInventoryType::EType getInventoryType() const { return LLInventoryType::IT_NONE; } - virtual LLWearableType::EType getWearableType() const { return LLWearableType::WT_NONE; } virtual bool potentiallyVisible() { return true; } virtual bool filter( LLFolderViewFilter& filter) { return true; } @@ -107,11 +103,6 @@ public: void setVisibleIfDetached(BOOL visible); - // This method should be called when a drag begins. - // Returns TRUE if the drag can begin, FALSE otherwise. - virtual LLToolDragAndDrop::ESource getDragSource() const { return LLToolDragAndDrop::SOURCE_PEOPLE; } - virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const { return FALSE; } - // This method will be called to determine if a drop can be // performed, and will set drop to TRUE if a drop is // requested. diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index e235d9cf5f..b4a91ca0f7 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -35,6 +35,7 @@ #include "llinventorypanel.h" #include "llviewercontrol.h" #include "llwearable.h" +#include "lltooldraganddrop.h" class LLInventoryFilter; class LLInventoryPanel; @@ -119,7 +120,7 @@ public: void getClipboardEntries(bool show_asset_id, menuentry_vec_t &items, menuentry_vec_t &disabled_items, U32 flags); virtual void buildContextMenu(LLMenuGL& menu, U32 flags); - virtual LLToolDragAndDrop::ESource getDragSource() const; + virtual LLToolDragAndDrop::ESource getDragSource() const; virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const; virtual BOOL dragOrDrop(MASK mask, BOOL drop, EDragAndDropType cargo_type, diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index fed9893158..0aa67cddca 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -571,7 +571,24 @@ void LLInventoryPanel::onIdle(void *userdata) void LLInventoryPanel::idle(void* user_data) { LLInventoryPanel* panel = (LLInventoryPanel*)user_data; - panel->mFolderRoot->doIdle(); + panel->mFolderRoot->update(); + // while dragging, update selection rendering to reflect single/multi drag status + if (LLToolDragAndDrop::getInstance()->hasMouseCapture()) + { + EAcceptance last_accept = LLToolDragAndDrop::getInstance()->getLastAccept(); + if (last_accept == ACCEPT_YES_SINGLE || last_accept == ACCEPT_YES_COPY_SINGLE) + { + panel->mFolderRoot->setShowSingleSelection(TRUE); + } + else + { + panel->mFolderRoot->setShowSingleSelection(FALSE); + } + } + else + { + panel->mFolderRoot->setShowSingleSelection(FALSE); + } } diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 002c0c1113..ca20051a51 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1557,7 +1557,6 @@ void LLPanelObjectInventory::reset() LLFolderView::Params p; p.name = "task inventory"; p.title = "task inventory"; - p.task_id = getTaskUUID(); p.parent_panel = this; p.tool_tip= LLTrans::getString("PanelContentsTooltip"); p.listener = LLTaskInvFVBridge::createObjectBridge(this, NULL); @@ -1823,6 +1822,7 @@ void LLPanelObjectInventory::refresh() removeVOInventoryListener(); clearContents(); } + mInventoryViewModel.setTaskID(mTaskUUID); //llinfos << "LLPanelObjectInventory::refresh() " << mTaskUUID << llendl; } diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 4a9e106687..cb59f704a5 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -58,6 +58,7 @@ #include "lltoolmgr.h" #include "lltoolpipette.h" #include "llfiltereditor.h" +#include "llwindow.h" #include "lltool.h" #include "llviewerwindow.h" -- cgit v1.3 From decd8a435d8fb15bab52eec9e447b176e33eb5cf Mon Sep 17 00:00:00 2001 From: Gilbert Gonzales Date: Tue, 24 Jul 2012 14:42:28 -0700 Subject: CHUI-211: Problem was due to a non-heap variable being deleted and then referenced later (which was found by ProductEngine). Also the crash occurred at a specifc location llpangelobjectinventory::reset() during a static_cast, so now using a dynamic_cast as a safeguard. --- indra/llui/llfolderview.cpp | 3 ++- indra/newview/llpanelobjectinventory.cpp | 7 ++++++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp index 8ade17b763..10729a3eae 100644 --- a/indra/llui/llfolderview.cpp +++ b/indra/llui/llfolderview.cpp @@ -266,7 +266,8 @@ LLFolderView::~LLFolderView( void ) mItems.clear(); mFolders.clear(); - delete mViewModel; + //product engine bugfix, prevent deletion of non-heap data + //delete mViewModel; mViewModel = NULL; } diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index ca20051a51..937d3bb8c5 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1565,7 +1565,12 @@ void LLPanelObjectInventory::reset() mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" //TODO RN: make this happen by manipulating filter object directly - static_cast(mFolders->getFolderViewModel()->getFilter())->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); + LLInventoryFilter* inventoryFilter = dynamic_cast(mFolders->getFolderViewModel()->getFilter()); + if(inventoryFilter) + { + inventoryFilter->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); + } + mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); if (hasFocus()) -- cgit v1.3 From c4f59fd5882d8b019830292e9e5ed1d2480f73ef Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 25 Jul 2012 14:30:17 -0700 Subject: CHUI-239 FIX Viewer crash when opening object with contents --- indra/newview/llfloatertools.cpp | 4 ++-- indra/newview/llfolderviewmodelinventory.cpp | 10 +++++----- indra/newview/llfolderviewmodelinventory.h | 10 +++------- indra/newview/llinventorybridge.cpp | 5 ++--- indra/newview/llinventorypanel.h | 1 + indra/newview/llpanelobjectinventory.cpp | 8 ++++++-- indra/newview/llpanelobjectinventory.h | 2 ++ indra/newview/llplacesinventorybridge.cpp | 2 -- 8 files changed, 21 insertions(+), 21 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp index 6978e6a430..43465d4209 100644 --- a/indra/newview/llfloatertools.cpp +++ b/indra/newview/llfloatertools.cpp @@ -660,8 +660,8 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) mBtnEdit ->setToggleState( edit_visible ); mRadioGroupEdit->setVisible( edit_visible ); - bool linked_parts = gSavedSettings.getBOOL("EditLinkedParts"); - getChildView("RenderingCost")->setVisible( !linked_parts && (edit_visible || focus_visible || move_visible) && sShowObjectCost); + //bool linked_parts = gSavedSettings.getBOOL("EditLinkedParts"); + //getChildView("RenderingCost")->setVisible( !linked_parts && (edit_visible || focus_visible || move_visible) && sShowObjectCost); mBtnLink->setVisible(edit_visible); mBtnUnlink->setVisible(edit_visible); diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index dff1e1be90..e8135496d5 100644 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -109,7 +109,7 @@ bool LLFolderViewModelInventory::contentsReady() void LLFolderViewModelItemInventory::requestSort() { LLFolderViewModelItemCommon::requestSort(); - if (mRootViewModel->getSorter().isByDate()) + if (mRootViewModel.getSorter().isByDate()) { // sort by date potentially affects parent folders which use a date // derived from newest item in them @@ -123,14 +123,14 @@ void LLFolderViewModelItemInventory::requestSort() bool LLFolderViewModelItemInventory::potentiallyVisible() { return passedFilter() // we've passed the filter - || getLastFilterGeneration() < mRootViewModel->getFilter()->getFirstSuccessGeneration() // or we don't know yet + || getLastFilterGeneration() < mRootViewModel.getFilter()->getFirstSuccessGeneration() // or we don't know yet || descendantsPassedFilter(); } bool LLFolderViewModelItemInventory::passedFilter(S32 filter_generation) { - if (filter_generation < 0 && mRootViewModel) - filter_generation = mRootViewModel->getFilter()->getFirstSuccessGeneration(); + if (filter_generation < 0) + filter_generation = mRootViewModel.getFilter()->getFirstSuccessGeneration(); return mPassedFolderFilter && mLastFilterGeneration >= filter_generation @@ -139,7 +139,7 @@ bool LLFolderViewModelItemInventory::passedFilter(S32 filter_generation) bool LLFolderViewModelItemInventory::descendantsPassedFilter(S32 filter_generation) { - if (filter_generation < 0) filter_generation = mRootViewModel->getFilter()->getFirstSuccessGeneration(); + if (filter_generation < 0) filter_generation = mRootViewModel.getFilter()->getFirstSuccessGeneration(); return mMostFilteredDescendantGeneration >= filter_generation; } diff --git a/indra/newview/llfolderviewmodelinventory.h b/indra/newview/llfolderviewmodelinventory.h index 12a977b28b..eb2a4bfdec 100644 --- a/indra/newview/llfolderviewmodelinventory.h +++ b/indra/newview/llfolderviewmodelinventory.h @@ -37,13 +37,9 @@ class LLFolderViewModelItemInventory : public LLFolderViewModelItemCommon { public: - LLFolderViewModelItemInventory() - : mRootViewModel(NULL) + LLFolderViewModelItemInventory(class LLFolderViewModelInventory& root_view_model) + : mRootViewModel(root_view_model) {} - void setRootViewModel(class LLFolderViewModelInventory* root_view_model) - { - mRootViewModel = root_view_model; - } virtual const LLUUID& getUUID() const = 0; virtual time_t getCreationDate() const = 0; // UTC seconds virtual void setCreationDate(time_t creation_date_utc) = 0; @@ -70,7 +66,7 @@ public: virtual LLToolDragAndDrop::ESource getDragSource() const = 0; protected: - class LLFolderViewModelInventory* mRootViewModel; + class LLFolderViewModelInventory& mRootViewModel; }; class LLInventorySort diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index d17c25d9f3..9f1d4bdec9 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -190,7 +190,8 @@ LLInvFVBridge::LLInvFVBridge(LLInventoryPanel* inventory, mUUID(uuid), mRoot(root), mInvType(LLInventoryType::IT_NONE), - mIsLink(FALSE) + mIsLink(FALSE), + LLFolderViewModelItemInventory(inventory->getRootViewModel()) { mInventoryPanel = inventory->getInventoryPanelHandle(); const LLInventoryObject* obj = getInventoryObject(); @@ -1158,7 +1159,6 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type, if (new_listener) { new_listener->mInvType = inv_type; - new_listener->setRootViewModel(view_model); } return new_listener; @@ -6484,7 +6484,6 @@ LLInvFVBridge* LLRecentInventoryBridgeBuilder::createBridge( && actual_asset_type != LLAssetType::AT_LINK_FOLDER) { new_listener = new LLRecentItemsFolderBridge(inv_type, inventory, root, uuid); - new_listener->setRootViewModel(view_model); } else { diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index 4fcc93b0c4..910325cdbc 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -104,6 +104,7 @@ public: public: LLInventoryModel* getModel() { return mInventory; } + LLFolderViewModelInventory& getRootViewModel() { return mInventoryViewModel; } // LLView methods void draw(); diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 937d3bb8c5..9bd716e900 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -155,7 +155,8 @@ LLTaskInvFVBridge::LLTaskInvFVBridge( LLPanelObjectInventory* panel, const LLUUID& uuid, const std::string& name, - U32 flags): + U32 flags) +: LLFolderViewModelItemInventory(panel->getRootViewModel()), mUUID(uuid), mName(name), mPanel(panel), @@ -1915,7 +1916,10 @@ void LLPanelObjectInventory::idle(void* user_data) { LLPanelObjectInventory* self = (LLPanelObjectInventory*)user_data; - + if (self->mFolders) + { + self->mFolders->update(); + } if (self->mInventoryNeedsUpdate) { self->updateInventory(); diff --git a/indra/newview/llpanelobjectinventory.h b/indra/newview/llpanelobjectinventory.h index 7e857f8b31..593fb43b6d 100644 --- a/indra/newview/llpanelobjectinventory.h +++ b/indra/newview/llpanelobjectinventory.h @@ -56,6 +56,8 @@ public: virtual BOOL postBuild(); + LLFolderViewModelInventory& getRootViewModel() { return mInventoryViewModel; } + void doToSelected(const LLSD& userdata); void refresh(); diff --git a/indra/newview/llplacesinventorybridge.cpp b/indra/newview/llplacesinventorybridge.cpp index af29ab7ea9..1a5f64e295 100644 --- a/indra/newview/llplacesinventorybridge.cpp +++ b/indra/newview/llplacesinventorybridge.cpp @@ -165,7 +165,6 @@ LLInvFVBridge* LLPlacesInventoryBridgeBuilder::createBridge( llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << LLInventoryType::lookupHumanReadable(inv_type) << " on uuid " << uuid << llendl; } new_listener = new LLPlacesLandmarkBridge(inv_type, inventory, root, uuid, flags); - new_listener->setRootViewModel(view_model); break; case LLAssetType::AT_CATEGORY: if (actual_asset_type == LLAssetType::AT_LINK_FOLDER) @@ -183,7 +182,6 @@ LLInvFVBridge* LLPlacesInventoryBridgeBuilder::createBridge( break; } new_listener = new LLPlacesFolderBridge(inv_type, inventory, root, uuid); - new_listener->setRootViewModel(view_model); break; default: new_listener = LLInventoryFVBridgeBuilder::createBridge( -- cgit v1.3 From f6dfd6bf0f3ea0e9b5f56a939867353c393539d6 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 25 Jul 2012 18:20:54 -0700 Subject: CHUI-222 FIX Selecting None in inventory filters does not update until inventory selected --- indra/llui/llfolderview.cpp | 2 - indra/llui/llfolderviewitem.cpp | 11 +++-- indra/llui/llfolderviewmodel.h | 4 +- indra/newview/llfolderviewmodelinventory.cpp | 74 +++++++++++++--------------- indra/newview/llfolderviewmodelinventory.h | 4 +- indra/newview/llimfloatercontainer.h | 2 +- indra/newview/llpanelobjectinventory.cpp | 2 +- 7 files changed, 49 insertions(+), 50 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp index 10729a3eae..147af04f30 100644 --- a/indra/llui/llfolderview.cpp +++ b/indra/llui/llfolderview.cpp @@ -266,8 +266,6 @@ LLFolderView::~LLFolderView( void ) mItems.clear(); mFolders.clear(); - //product engine bugfix, prevent deletion of non-heap data - //delete mViewModel; mViewModel = NULL; } diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 741fc9c324..a356d587f9 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -1543,11 +1543,14 @@ BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) void LLFolderViewFolder::requestArrange() { - mLastArrangeGeneration = -1; - // flag all items up to root - if (mParentFolder) + //if ( mLastArrangeGeneration != -1) { - mParentFolder->requestArrange(); + mLastArrangeGeneration = -1; + // flag all items up to root + if (mParentFolder) + { + mParentFolder->requestArrange(); + } } } diff --git a/indra/llui/llfolderviewmodel.h b/indra/llui/llfolderviewmodel.h index 268ae8eea8..acdec53602 100644 --- a/indra/llui/llfolderviewmodel.h +++ b/indra/llui/llfolderviewmodel.h @@ -152,7 +152,7 @@ public: virtual bool potentiallyVisible() = 0; // is the item definitely visible or we haven't made up our minds yet? - virtual bool filter( LLFolderViewFilter& filter) = 0; + virtual void filter( LLFolderViewFilter& filter) = 0; virtual bool passedFilter(S32 filter_generation = -1) = 0; virtual bool descendantsPassedFilter(S32 filter_generation = -1) = 0; virtual void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) = 0; @@ -192,6 +192,7 @@ public: : mSortVersion(-1), mPassedFilter(true), mPassedFolderFilter(true), + mPrevPassedAllFilters(false), mFolderViewItem(NULL), mLastFilterGeneration(-1), mMostFilteredDescendantGeneration(-1), @@ -232,6 +233,7 @@ protected: S32 mSortVersion; bool mPassedFilter; bool mPassedFolderFilter; + bool mPrevPassedAllFilters; S32 mLastFilterGeneration; S32 mMostFilteredDescendantGeneration; diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index e8135496d5..13ca73917b 100644 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -133,8 +133,9 @@ bool LLFolderViewModelItemInventory::passedFilter(S32 filter_generation) filter_generation = mRootViewModel.getFilter()->getFirstSuccessGeneration(); return mPassedFolderFilter - && mLastFilterGeneration >= filter_generation - && (mPassedFilter || descendantsPassedFilter(filter_generation)); + && (descendantsPassedFilter(filter_generation) + || (mLastFilterGeneration >= filter_generation + && mPassedFilter)); } bool LLFolderViewModelItemInventory::descendantsPassedFilter(S32 filter_generation) @@ -148,30 +149,29 @@ void LLFolderViewModelItemInventory::setPassedFilter(bool passed, bool passed_fo mPassedFilter = passed; mPassedFolderFilter = passed_folder; mLastFilterGeneration = filter_generation; + + bool passed_filter_before = mPrevPassedAllFilters; + mPrevPassedAllFilters = passedFilter(filter_generation); + + if (passed_filter_before != mPrevPassedAllFilters) + { + //TODO RN: ensure this still happens, but without dependency on folderview + LLFolderViewFolder* parent_folder = mFolderViewItem->getParentFolder(); + if (parent_folder) + { + parent_folder->requestArrange(); + } + } } -bool LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter ) +void LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter ) { - bool passed_filter_before = item->passedFilter(); S32 filter_generation = filter.getCurrentGeneration(); - S32 must_pass_generation = filter.getFirstRequiredGeneration(); if (item->getLastFilterGeneration() < filter_generation) { // recursive application of the filter for child items item->filter( filter ); - - if (item->getLastFilterGeneration() >= must_pass_generation - && !item->passedFilter(must_pass_generation)) - { - // failed to pass an earlier filter that was a subset of the current one - // go ahead and flag this item as done - if (item->passedFilter()) - { - llerrs << "Invalid shortcut in inventory filtering!" << llendl; - } - item->setPassedFilter(false, false, filter_generation); - } } // track latest generation to pass any child items, for each folder up to root @@ -184,39 +184,36 @@ bool LLFolderViewModelItemInventory::filterChildItem( LLFolderViewModelItem* ite view_model->mMostFilteredDescendantGeneration = filter_generation; view_model = static_cast(view_model->mParent); } - - return !passed_filter_before; - } - else // !item->passedfilter() - { - return passed_filter_before; } } -bool LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) +void LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) { - bool changed = false; + const S32 filter_generation = filter.getCurrentGeneration(); + const S32 must_pass_generation = filter.getFirstRequiredGeneration(); + + if (getLastFilterGeneration() >= must_pass_generation + && !passedFilter(must_pass_generation)) + { + // failed to pass an earlier filter that was a subset of the current one + // go ahead and flag this item as done + setPassedFilter(false, false, filter_generation); + return; + } if(!mChildren.empty() - && (getLastFilterGeneration() < filter.getFirstRequiredGeneration() // haven't checked descendants against minimum required generation to pass - || descendantsPassedFilter(filter.getFirstRequiredGeneration()))) // or at least one descendant has passed the minimum requirement + && (getLastFilterGeneration() < must_pass_generation // haven't checked descendants against minimum required generation to pass + || descendantsPassedFilter(must_pass_generation))) // or at least one descendant has passed the minimum requirement { // now query children - for (child_list_t::iterator iter = mChildren.begin(); - iter != mChildren.end() && filter.getFilterCount() > 0; + for (child_list_t::iterator iter = mChildren.begin(), end_iter = mChildren.end(); + iter != end_iter && filter.getFilterCount() > 0; ++iter) { - changed |= filterChildItem((*iter), filter); + filterChildItem((*iter), filter); } } - if (changed) - { - //TODO RN: ensure this still happens, but without dependency on folderview - LLFolderViewFolder* folder = static_cast(mFolderViewItem); - folder->requestArrange(); - } - // if we didn't use all filter iterations // that means we filtered all of our descendants // so filter ourselves now @@ -229,11 +226,10 @@ bool LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter) ? filter.checkFolder(this) : true; - setPassedFilter(passed_filter, passed_filter_folder, filter.getCurrentGeneration()); + setPassedFilter(passed_filter, passed_filter_folder, filter_generation); //TODO RN: create interface for string highlighting //mStringMatchOffset = filter.getStringMatchOffset(this); } - return changed; } LLFolderViewModelInventory* LLInventoryPanel::getFolderViewModel() diff --git a/indra/newview/llfolderviewmodelinventory.h b/indra/newview/llfolderviewmodelinventory.h index eb2a4bfdec..ab67c93897 100644 --- a/indra/newview/llfolderviewmodelinventory.h +++ b/indra/newview/llfolderviewmodelinventory.h @@ -59,8 +59,8 @@ public: virtual bool passedFilter(S32 filter_generation = -1); virtual bool descendantsPassedFilter(S32 filter_generation = -1); virtual void setPassedFilter(bool filtered, bool filtered_folder, S32 filter_generation); - virtual bool filter( LLFolderViewFilter& filter); - virtual bool filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); + virtual void filter( LLFolderViewFilter& filter); + virtual void filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); virtual BOOL startDrag(EDragAndDropType* type, LLUUID* id) const = 0; virtual LLToolDragAndDrop::ESource getDragSource() const = 0; diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h index a25ea0ab46..7005ab7b6a 100644 --- a/indra/newview/llimfloatercontainer.h +++ b/indra/newview/llimfloatercontainer.h @@ -89,7 +89,7 @@ public: virtual bool hasChildren() const { return FALSE; } virtual bool potentiallyVisible() { return true; } - virtual bool filter( LLFolderViewFilter& filter) { return true; } + virtual void filter( LLFolderViewFilter& filter) { } virtual bool descendantsPassedFilter(S32 filter_generation = -1) { return true; } virtual void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) { } virtual bool passedFilter(S32 filter_generation = -1) { return true; } diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 9bd716e900..4719191231 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1616,7 +1616,7 @@ void LLPanelObjectInventory::inventoryChanged(LLViewerObject* object, iter != inventory->end(); ) { LLInventoryObject* item = *iter++; - LLFloaterProperties* floater = LLFloaterReg::findTypedInstance("properites", item->getUUID()); + LLFloaterProperties* floater = LLFloaterReg::findTypedInstance("properties", item->getUUID()); if(floater) { floater->refresh(); -- cgit v1.3 From 69b57d4ac075db855d88c2ff0e8c580e9e41ebf7 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 25 Jul 2012 19:54:39 -0700 Subject: CHUI-252 FIX Deleting an item from object contents in build tools crashes viewer also improved selection behavior for object contents when deleting/adding items --- indra/llui/llhandle.h | 13 +++---- indra/newview/llpanelobjectinventory.cpp | 64 ++++++++++++++++++++++++++------ indra/newview/llpanelobjectinventory.h | 7 ++++ 3 files changed, 66 insertions(+), 18 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llhandle.h b/indra/llui/llhandle.h index 37c657dd92..680a1a7f1d 100644 --- a/indra/llui/llhandle.h +++ b/indra/llui/llhandle.h @@ -158,13 +158,6 @@ public: return mHandle; } -protected: - typedef LLHandle handle_type_t; - LLHandleProvider() - { - // provided here to enforce T deriving from LLHandleProvider - } - template LLHandle getDerivedHandle(typename boost::enable_if< typename boost::is_convertible >::type* dummy = 0) const { @@ -173,6 +166,12 @@ protected: return downcast_handle; } +protected: + typedef LLHandle handle_type_t; + LLHandleProvider() + { + // provided here to enforce T deriving from LLHandleProvider + } private: mutable LLRootHandle mHandle; diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 4719191231..473b5d9479 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1535,6 +1535,8 @@ void LLPanelObjectInventory::clearContents() LLToolDragAndDrop::getInstance()->endDrag(); } + clearItemIDs(); + if( mScroller ) { // removes mFolders @@ -1550,8 +1552,6 @@ void LLPanelObjectInventory::reset() { clearContents(); - //setBorderVisible(FALSE); - mCommitCallbackRegistrar.pushScope(); // push local callbacks LLRect dummy_rect(0, 1, 1, 0); @@ -1631,15 +1631,20 @@ void LLPanelObjectInventory::updateInventory() // << " panel UUID: " << panel->mTaskUUID << "\n" // << " task UUID: " << object->mID << llendl; // We're still interested in this task's inventory. + std::vector selected_item_ids; std::set selected_items; BOOL inventory_has_focus = FALSE; - if (mHaveInventory) + if (mHaveInventory && mFolders) { selected_items = mFolders->getSelectionList(); inventory_has_focus = gFocusMgr.childHasKeyboardFocus(mFolders); } - - reset(); + for (std::set::iterator it = selected_items.begin(), end_it = selected_items.end(); + it != end_it; + ++it) + { + selected_item_ids.push_back(static_cast((*it)->getViewModelItem())->getUUID()); + } LLViewerObject* objectp = gObjectList.findObject(mTaskUUID); if (objectp) @@ -1647,10 +1652,11 @@ void LLPanelObjectInventory::updateInventory() LLInventoryObject* inventory_root = objectp->getInventoryRoot(); LLInventoryObject::object_list_t contents; objectp->getInventoryContents(contents); - mHaveInventory = TRUE; if (inventory_root && !contents.empty()) { + reset(); + createFolderViews(inventory_root, contents); mIsInventoryEmpty = FALSE; mFolders->setEnabled(TRUE); @@ -1660,6 +1666,8 @@ void LLPanelObjectInventory::updateInventory() // TODO: create an empty inventory mIsInventoryEmpty = TRUE; } + + mHaveInventory = TRUE; } else { @@ -1669,11 +1677,12 @@ void LLPanelObjectInventory::updateInventory() } // restore previous selection - std::set::iterator selection_it; - BOOL first_item = TRUE; - for (selection_it = selected_items.begin(); selection_it != selected_items.end(); ++selection_it) + std::vector::iterator selection_it; + bool first_item = true; + for (selection_it = selected_item_ids.begin(); selection_it != selected_item_ids.end(); ++selection_it) { - LLFolderViewItem* selected_item = (*selection_it); + LLFolderViewItem* selected_item = getItemByID(*selection_it); + if (selected_item) { //HACK: "set" first item then "change" each other one to get keyboard focus right @@ -1689,7 +1698,10 @@ void LLPanelObjectInventory::updateInventory() } } - mFolders->requestArrange(); + if (mFolders) + { + mFolders->requestArrange(); + } mInventoryNeedsUpdate = FALSE; // Edit menu handler is set in onFocusReceived } @@ -1761,6 +1773,7 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li view = LLUICtrlFactory::create (params); } view->addToFolder(folder); + addItemID(obj->getUUID(), view); } } @@ -1944,3 +1957,32 @@ void LLPanelObjectInventory::onFocusReceived() LLPanel::onFocusReceived(); } + + +LLFolderViewItem* LLPanelObjectInventory::getItemByID( const LLUUID& id ) +{ + std::map::iterator map_it; + map_it = mItemMap.find(id); + if (map_it != mItemMap.end()) + { + return map_it->second; + } + + return NULL; +} + +void LLPanelObjectInventory::removeItemID( const LLUUID& id ) +{ + mItemMap.erase(id); +} + +void LLPanelObjectInventory::addItemID( const LLUUID& id, LLFolderViewItem* itemp ) +{ + mItemMap[id] = itemp; +} + +void LLPanelObjectInventory::clearItemIDs() +{ + mItemMap.clear(); +} + diff --git a/indra/newview/llpanelobjectinventory.h b/indra/newview/llpanelobjectinventory.h index 593fb43b6d..f497c695b3 100644 --- a/indra/newview/llpanelobjectinventory.h +++ b/indra/newview/llpanelobjectinventory.h @@ -88,8 +88,15 @@ protected: LLInventoryObject* parent, LLFolderViewFolder* folder); void clearContents(); + LLFolderViewItem* getItemByID(const LLUUID& id); + + void addItemID( const LLUUID& id, LLFolderViewItem* itemp ); + void removeItemID(const LLUUID& id); + void clearItemIDs(); private: + std::map mItemMap; + LLScrollContainer* mScroller; LLFolderView* mFolders; -- cgit v1.3 From 5221e48ef64d3965f6d4d3dbf0f937982230d11c Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 26 Jul 2012 17:26:27 -0700 Subject: CHUI-251: Resetting the object inventory panel after deleting the last object. --- indra/newview/llpanelobjectinventory.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 473b5d9479..fe1ff01bc2 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1653,13 +1653,16 @@ void LLPanelObjectInventory::updateInventory() LLInventoryObject::object_list_t contents; objectp->getInventoryContents(contents); - if (inventory_root && !contents.empty()) + if (inventory_root) { reset(); + mIsInventoryEmpty = contents.empty(); + if (!mIsInventoryEmpty) + { - createFolderViews(inventory_root, contents); - mIsInventoryEmpty = FALSE; - mFolders->setEnabled(TRUE); + createFolderViews(inventory_root, contents); + mFolders->setEnabled(TRUE); + } } else { -- cgit v1.3 From 1e65ba1f909604b027cb7dee5631f698a9f550a8 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 26 Jul 2012 18:57:54 -0700 Subject: CHUI-251: Adding back in the root 'Contents' folder under the Build floater Content tab. --- indra/newview/llpanelobjectinventory.cpp | 25 +++++++++++++++++-------- indra/newview/skins/default/xui/en/strings.xml | 3 --- 2 files changed, 17 insertions(+), 11 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index fe1ff01bc2..5887f4d244 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1656,13 +1656,9 @@ void LLPanelObjectInventory::updateInventory() if (inventory_root) { reset(); - mIsInventoryEmpty = contents.empty(); - if (!mIsInventoryEmpty) - { - - createFolderViews(inventory_root, contents); - mFolders->setEnabled(TRUE); - } + mIsInventoryEmpty = FALSE; + createFolderViews(inventory_root, contents); + mFolders->setEnabled(TRUE); } else { @@ -1725,7 +1721,20 @@ void LLPanelObjectInventory::createFolderViews(LLInventoryObject* inventory_root bridge = LLTaskInvFVBridge::createObjectBridge(this, inventory_root); if(bridge) { - createViewsForCategory(&contents, inventory_root, mFolders); + LLFolderViewFolder::Params p; + p.name = inventory_root->getName(); + p.tool_tip = p.name; + p.root = mFolders; + p.listener = bridge; + + LLFolderViewFolder* new_folder = LLUICtrlFactory::create(p); + new_folder->addToFolder(mFolders); + new_folder->toggleOpen(); + + if (!contents.empty()) + { + createViewsForCategory(&contents, inventory_root, new_folder); + } } } diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml index 7790a382d9..fff892af68 100644 --- a/indra/newview/skins/default/xui/en/strings.xml +++ b/indra/newview/skins/default/xui/en/strings.xml @@ -2447,9 +2447,6 @@ Drag folders to this area and click "Send to Marketplace" to list them for sale Debits [weekday,datetime,utc] [mth,datetime,utc] [day,datetime,utc], [year,datetime,utc] - - Contents - Acquired Items Cancel -- cgit v1.3 From 3ba619053de562fc623263704af2bc2f415e8389 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 27 Jul 2012 14:10:29 -0700 Subject: CHUI-256 FIX Invalid param warnings in llfolderview when adding and deleting items from object inventory --- indra/newview/llconversationlog.h | 2 +- indra/newview/llimfloatercontainer.cpp | 1 + indra/newview/llinventorypanel.cpp | 1 + indra/newview/llpanelobjectinventory.cpp | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llconversationlog.h b/indra/newview/llconversationlog.h index 700472ca8b..18865bb80e 100644 --- a/indra/newview/llconversationlog.h +++ b/indra/newview/llconversationlog.h @@ -31,7 +31,7 @@ #include "llimview.h" class LLConversationLogObserver; -class Conversation_params; +struct Conversation_params; typedef LLIMModel::LLIMSession::SType SessionType; diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index c19683b1c2..74f089811e 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -107,6 +107,7 @@ BOOL LLIMFloaterContainer::postBuild() p.rect = mConversationsListPanel->getLocalRect(); p.follows.flags = FOLLOWS_ALL; p.listener = base_item; + p.root = NULL; mConversationsRoot = LLUICtrlFactory::create(p); mConversationsListPanel->addChild(mConversationsRoot); diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 6a7ee3b6a0..be1cd2510d 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -659,6 +659,7 @@ LLFolderView * LLInventoryPanel::createFolderView(LLInvFVBridge * bridge, bool u p.allow_multiselect = mAllowMultiSelect; p.show_empty_message = mShowEmptyMessage; p.show_item_link_overlays = mShowItemLinkOverlays; + p.root = NULL; return LLUICtrlFactory::create(p); } diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 5887f4d244..4f2c515bde 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1563,6 +1563,7 @@ void LLPanelObjectInventory::reset() p.listener = LLTaskInvFVBridge::createObjectBridge(this, NULL); p.folder_indentation = -14; // subtract space normally reserved for folder expanders p.view_model = &mInventoryViewModel; + p.root = NULL; mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" //TODO RN: make this happen by manipulating filter object directly -- cgit v1.3 From a204059d2e69fb33cb1a3c8d2fbed35d3967297c Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 1 Aug 2012 01:14:27 -0700 Subject: CHUI-267 FIX Full inventory listing not always shown for test account changed LLFolderViewModelInterface::getFilter() to return a reference, since it is never NULL removed sort order from filter, which was causing unneeded filtering --- indra/llui/llfolderview.cpp | 12 ++-- indra/llui/llfolderview.h | 2 +- indra/llui/llfolderviewitem.cpp | 68 +++++++----------- indra/llui/llfolderviewitem.h | 20 +++--- indra/llui/llfolderviewmodel.cpp | 8 +-- indra/llui/llfolderviewmodel.h | 82 ++++++++++++++++------ indra/newview/llfloateroutbox.cpp | 2 +- indra/newview/llfolderviewmodelinventory.cpp | 40 ++++------- indra/newview/llfolderviewmodelinventory.h | 36 ++++++---- indra/newview/llinventorybridge.cpp | 2 +- indra/newview/llinventoryfilter.cpp | 17 ----- indra/newview/llinventoryfilter.h | 25 +++---- indra/newview/llinventorypanel.cpp | 53 +++++++------- indra/newview/llinventorypanel.h | 10 ++- indra/newview/llpanellandmarks.cpp | 24 ++----- indra/newview/llpanelmaininventory.cpp | 76 ++++++++++---------- indra/newview/llpanelmarketplaceinbox.cpp | 4 +- indra/newview/llpanelmarketplaceinboxinventory.cpp | 6 +- indra/newview/llpanelmarketplaceinboxinventory.h | 2 +- indra/newview/llpanelobjectinventory.cpp | 7 +- indra/newview/lltexturectrl.cpp | 10 +-- 21 files changed, 239 insertions(+), 267 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp index e09026fc33..d714d4623d 100644 --- a/indra/llui/llfolderview.cpp +++ b/indra/llui/llfolderview.cpp @@ -274,7 +274,7 @@ BOOL LLFolderView::canFocusChildren() const return FALSE; } -BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) +void LLFolderView::addFolder( LLFolderViewFolder* folder) { LLFolderViewFolder::addFolder(folder); @@ -288,8 +288,6 @@ BOOL LLFolderView::addFolder( LLFolderViewFolder* folder) //{ // mFolders.insert(mFolders.begin(), folder); //} - - return TRUE; } void LLFolderView::closeAllFolders() @@ -1769,14 +1767,14 @@ void LLFolderView::update() // until that inventory is loaded up. LLFastTimer t2(FTM_INVENTORY); - if (getFolderViewModel()->getFilter()->isModified() && getFolderViewModel()->getFilter()->isNotDefault()) + if (getFolderViewModel()->getFilter().isModified() && getFolderViewModel()->getFilter().isNotDefault()) { mNeedsAutoSelect = TRUE; } - getFolderViewModel()->getFilter()->clearModified(); + getFolderViewModel()->getFilter().clearModified(); // filter to determine visibility before arranging - filter(*(getFolderViewModel()->getFilter())); + filter(getFolderViewModel()->getFilter()); // automatically show matching items, and select first one if we had a selection if (mNeedsAutoSelect) @@ -1794,7 +1792,7 @@ void LLFolderView::update() // Open filtered folders for folder views with mAutoSelectOverride=TRUE. // Used by LLPlacesFolderView. - if (getFolderViewModel()->getFilter()->showAllResults()) + if (getFolderViewModel()->getFilter().showAllResults()) { // these are named variables to get around gcc not binding non-const references to rvalues // and functor application is inherently non-const to allow for stateful functors diff --git a/indra/llui/llfolderview.h b/indra/llui/llfolderview.h index 5ebd8f73ac..05beff9bd8 100644 --- a/indra/llui/llfolderview.h +++ b/indra/llui/llfolderview.h @@ -121,7 +121,7 @@ public: void closeAllFolders(); void openTopLevelFolders(); - virtual BOOL addFolder( LLFolderViewFolder* folder); + virtual void addFolder( LLFolderViewFolder* folder); // Find width and height of this object and its children. Also // makes sure that this view and its children are the right size. diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index 0f486d06c9..167c8123a1 100644 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -221,11 +221,11 @@ void LLFolderViewItem::refresh() mIconOpen = vmi.getIconOpen(); mIconOverlay = vmi.getIconOverlay(); - if (mRoot->useLabelSuffix()) - { + if (mRoot->useLabelSuffix()) + { mLabelStyle = vmi.getLabelStyle(); mLabelSuffix = vmi.getLabelSuffix(); -} + } //TODO RN: make sure this logic still fires //std::string searchable_label(mLabel); @@ -255,7 +255,7 @@ void LLFolderViewItem::arrangeAndSet(BOOL set_selection, LLFolderView* root = getRoot(); if (getParentFolder()) { - getParentFolder()->requestArrange(); + getParentFolder()->requestArrange(); } if(set_selection) { @@ -275,9 +275,9 @@ std::set LLFolderViewItem::getSelectionList() const } // addToFolder() returns TRUE if it succeeds. FALSE otherwise -BOOL LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) +void LLFolderViewItem::addToFolder(LLFolderViewFolder* folder) { - return folder->addItem(this); + folder->addItem(this); } @@ -418,12 +418,12 @@ void LLFolderViewItem::rename(const std::string& new_name) { getViewModelItem()->renameItem(new_name); - if(mParentFolder) - { - mParentFolder->requestSort(); - } - } + //if(mParentFolder) + //{ + // mParentFolder->requestSort(); + //} } +} const std::string& LLFolderViewItem::getName( void ) const { @@ -839,9 +839,9 @@ LLFolderViewFolder::~LLFolderViewFolder( void ) } // addToFolder() returns TRUE if it succeeds. FALSE otherwise -BOOL LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder) +void LLFolderViewFolder::addToFolder(LLFolderViewFolder* folder) { - return folder->addFolder(this); + folder->addFolder(this); } static LLFastTimer::DeclareTimer FTM_ARRANGE("Arrange"); @@ -1008,11 +1008,6 @@ BOOL LLFolderViewFolder::needsArrange() return mLastArrangeGeneration < getRoot()->getArrangeGeneration(); } -void LLFolderViewFolder::requestSort() -{ - getViewModelItem()->requestSort(); -} - //TODO RN: get height resetting working //void LLFolderViewFolder::setPassedFilter(BOOL passed, BOOL passed_folder, S32 filter_generation) //{ @@ -1417,7 +1412,6 @@ void LLFolderViewFolder::extractItem( LLFolderViewItem* item ) } //item has been removed, need to update filter getViewModelItem()->removeChild(item->getViewModelItem()); - getViewModelItem()->dirtyFilter(); //because an item is going away regardless of filter status, force rearrange requestArrange(); removeChild(item); @@ -1483,7 +1477,7 @@ BOOL LLFolderViewFolder::isRemovable() } // this is an internal method used for adding items to folders. -BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) +void LLFolderViewFolder::addItem(LLFolderViewItem* item) { if (item->getParentFolder()) { @@ -1496,7 +1490,6 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) item->setRect(LLRect(0, 0, getRect().getWidth(), 0)); item->setVisible(FALSE); - addChild(item); // TODO RN - port creation date management to new code location #if 0 @@ -1504,10 +1497,7 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) setCreationDate(llmax(mCreationDate, item->getCreationDate())); #endif - // Handle sorting - requestArrange(); - requestSort(); - + addChild(item); getViewModelItem()->addChild(item->getViewModelItem()); // TODO RN - port creation date management to new code location #if 0 @@ -1533,14 +1523,10 @@ BOOL LLFolderViewFolder::addItem(LLFolderViewItem* item) // parentp = parentp->getParentFolder(); //} - - item->getViewModelItem()->dirtyFilter(); - - return TRUE; } // this is an internal method used for adding items to folders. -BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) +void LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) { if (folder->mParentFolder) { @@ -1551,30 +1537,26 @@ BOOL LLFolderViewFolder::addFolder(LLFolderViewFolder* folder) folder->setOrigin(0, 0); folder->reshape(getRect().getWidth(), 0); folder->setVisible(FALSE); - addChild( folder ); // rearrange all descendants too, as our indentation level might have changed - folder->requestArrange(); - requestSort(); + //folder->requestArrange(); + //requestSort(); + addChild( folder ); getViewModelItem()->addChild(folder->getViewModelItem()); - //After addChild since addChild assigns parent to bubble up to when calling dirtyFilter - folder->getViewModelItem()->dirtyFilter(); - - return TRUE; } void LLFolderViewFolder::requestArrange() { //if ( mLastArrangeGeneration != -1) { - mLastArrangeGeneration = -1; - // flag all items up to root - if (mParentFolder) - { - mParentFolder->requestArrange(); - } + mLastArrangeGeneration = -1; + // flag all items up to root + if (mParentFolder) + { + mParentFolder->requestArrange(); } } +} void LLFolderViewFolder::toggleOpen() { diff --git a/indra/llui/llfolderviewitem.h b/indra/llui/llfolderviewitem.h index df007dd15d..baa12b38f3 100644 --- a/indra/llui/llfolderviewitem.h +++ b/indra/llui/llfolderviewitem.h @@ -116,8 +116,8 @@ protected: // this is an internal method used for adding items to folders. A // no-op at this level, but reimplemented in derived classes. - virtual BOOL addItem(LLFolderViewItem*) { return FALSE; } - virtual BOOL addFolder(LLFolderViewFolder*) { return FALSE; } + virtual void addItem(LLFolderViewItem*) { } + virtual void addFolder(LLFolderViewFolder*) { } static LLFontGL* getLabelFontForStyle(U8 style); @@ -131,7 +131,7 @@ public: virtual ~LLFolderViewItem( void ); // addToFolder() returns TRUE if it succeeds. FALSE otherwise - virtual BOOL addToFolder(LLFolderViewFolder* folder); + virtual void addToFolder(LLFolderViewFolder* folder); // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. @@ -297,7 +297,7 @@ public: LLFolderViewItem* getPreviousFromChild( LLFolderViewItem*, BOOL include_children = TRUE ); // addToFolder() returns TRUE if it succeeds. FALSE otherwise - virtual BOOL addToFolder(LLFolderViewFolder* folder); + virtual void addToFolder(LLFolderViewFolder* folder); // Finds width and height of this object and it's children. Also // makes sure that this view and it's children are the right size. @@ -356,8 +356,6 @@ public: // Called when a child is refreshed. virtual void requestArrange(); - virtual void requestSort(); - // internal method which doesn't update the entire view. This // method was written because the list iterators destroy the state // of other iterations, thus, we can't arrange while iterating @@ -381,8 +379,6 @@ public: void applyFunctorToChildren(LLFolderViewFunctor& functor); virtual void openItem( void ); - virtual BOOL addItem(LLFolderViewItem* item); - virtual BOOL addFolder( LLFolderViewFolder* folder); // LLView functionality virtual BOOL handleHover(S32 x, S32 y, MASK mask); @@ -412,6 +408,14 @@ public: LLFolderViewFolder* getCommonAncestor(LLFolderViewItem* item_a, LLFolderViewItem* item_b, bool& reverse); void gatherChildRangeExclusive(LLFolderViewItem* start, LLFolderViewItem* end, bool reverse, std::vector& items); +protected: + friend void LLFolderViewItem::addToFolder(LLFolderViewFolder*); + // internal functions for tracking folders and items separately + // use addToFolder() virtual method to ensure folders are always added to mFolders + // and not mItems + void addItem(LLFolderViewItem* item); + void addFolder( LLFolderViewFolder* folder); + public: //WARNING: do not call directly...use the appropriate LLFolderViewModel-derived class instead template void sortFolders(const SORT_FUNC& func) { mFolders.sort(func); } diff --git a/indra/llui/llfolderviewmodel.cpp b/indra/llui/llfolderviewmodel.cpp index dc6e4d754b..6aa4a63edc 100644 --- a/indra/llui/llfolderviewmodel.cpp +++ b/indra/llui/llfolderviewmodel.cpp @@ -36,18 +36,18 @@ bool LLFolderViewModelCommon::needsSort(LLFolderViewModelItem* item) std::string LLFolderViewModelCommon::getStatusText() { - if (!contentsReady() || mFolderView->getViewModelItem()->getLastFilterGeneration() < getFilter()->getCurrentGeneration()) + if (!contentsReady() || mFolderView->getViewModelItem()->getLastFilterGeneration() < getFilter().getCurrentGeneration()) { return LLTrans::getString("Searching"); } else { - return getFilter()->getEmptyLookupMessage(); + return getFilter().getEmptyLookupMessage(); } } void LLFolderViewModelCommon::filter() { - getFilter()->setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); - mFolderView->getViewModelItem()->filter(*getFilter()); + getFilter().setFilterCount(llclamp(LLUI::sSettingGroups["config"]->getS32("FilterItemsPerFrame"), 1, 5000)); + mFolderView->getViewModelItem()->filter(getFilter()); } diff --git a/indra/llui/llfolderviewmodel.h b/indra/llui/llfolderviewmodel.h index acdec53602..81de15923a 100644 --- a/indra/llui/llfolderviewmodel.h +++ b/indra/llui/llfolderviewmodel.h @@ -107,6 +107,24 @@ public: virtual S32 getFirstRequiredGeneration() const = 0; }; +class LLFolderViewModelInterface +{ +public: + virtual ~LLFolderViewModelInterface() {} + virtual void requestSortAll() = 0; + + virtual void sort(class LLFolderViewFolder*) = 0; + virtual void filter() = 0; + + virtual bool contentsReady() = 0; + virtual void setFolderView(LLFolderView* folder_view) = 0; + virtual LLFolderViewFilter& getFilter() = 0; + virtual const LLFolderViewFilter& getFilter() const = 0; + virtual std::string getStatusText() = 0; + + virtual bool startDrag(std::vector& items) = 0; +}; + // This is am abstract base class that users of the folderview classes // would use to bridge the folder view with the underlying data class LLFolderViewModelItem @@ -188,15 +206,15 @@ protected: class LLFolderViewModelItemCommon : public LLFolderViewModelItem { public: - LLFolderViewModelItemCommon() + LLFolderViewModelItemCommon(LLFolderViewModelInterface& root_view_model) : mSortVersion(-1), mPassedFilter(true), mPassedFolderFilter(true), - mPrevPassedAllFilters(false), mFolderViewItem(NULL), mLastFilterGeneration(-1), mMostFilteredDescendantGeneration(-1), - mParent(NULL) + mParent(NULL), + mRootViewModel(root_view_model) { std::for_each(mChildren.begin(), mChildren.end(), DeletePointer()); } @@ -220,20 +238,55 @@ public: { mChildren.push_back(child); child->setParent(this); + dirtyFilter(); + requestSort(); } virtual void removeChild(LLFolderViewModelItem* child) { mChildren.remove(child); child->setParent(NULL); + dirtyFilter(); + } + + void setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) + { + mPassedFilter = passed; + mPassedFolderFilter = passed_folder; + mLastFilterGeneration = filter_generation; + } + + virtual bool potentiallyVisible() + { + return passedFilter() // we've passed the filter + || getLastFilterGeneration() < mRootViewModel.getFilter().getFirstSuccessGeneration() // or we don't know yet + || descendantsPassedFilter(); } + virtual bool passedFilter(S32 filter_generation = -1) + { + if (filter_generation < 0) + filter_generation = mRootViewModel.getFilter().getFirstSuccessGeneration(); + + bool passed_folder_filter = mPassedFolderFilter && mLastFilterGeneration >= filter_generation; + bool passed_filter = mPassedFilter && mLastFilterGeneration >= filter_generation; + return passed_folder_filter + && (descendantsPassedFilter(filter_generation) + || passed_filter); + } + + virtual bool descendantsPassedFilter(S32 filter_generation = -1) + { + if (filter_generation < 0) filter_generation = mRootViewModel.getFilter().getFirstSuccessGeneration(); + return mMostFilteredDescendantGeneration >= filter_generation; + } + + protected: virtual void setParent(LLFolderViewModelItem* parent) { mParent = parent; } S32 mSortVersion; bool mPassedFilter; bool mPassedFolderFilter; - bool mPrevPassedAllFilters; S32 mLastFilterGeneration; S32 mMostFilteredDescendantGeneration; @@ -242,28 +295,13 @@ protected: typedef std::list child_list_t; child_list_t mChildren; LLFolderViewModelItem* mParent; + LLFolderViewModelInterface& mRootViewModel; void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;} LLFolderViewItem* mFolderViewItem; }; -class LLFolderViewModelInterface -{ -public: - virtual ~LLFolderViewModelInterface() {} - virtual void requestSortAll() = 0; - - virtual void sort(class LLFolderViewFolder*) = 0; - virtual void filter() = 0; - - virtual bool contentsReady() = 0; - virtual void setFolderView(LLFolderView* folder_view) = 0; - virtual LLFolderViewFilter* getFilter() = 0; - virtual const LLFolderViewFilter* getFilter() const = 0; - virtual std::string getStatusText() = 0; - virtual bool startDrag(std::vector& items) = 0; -}; class LLFolderViewModelCommon : public LLFolderViewModelInterface { @@ -307,8 +345,8 @@ public: virtual const SortType& getSorter() const { return mSorter; } virtual void setSorter(const SortType& sorter) { mSorter = sorter; requestSortAll(); } - virtual FilterType* getFilter() { return &mFilter; } - virtual const FilterType* getFilter() const { return &mFilter; } + virtual FilterType& getFilter() { return mFilter; } + virtual const FilterType& getFilter() const { return mFilter; } virtual void setFilter(const FilterType& filter) { mFilter = filter; } // TODO RN: remove this and put all filtering logic in view model diff --git a/indra/newview/llfloateroutbox.cpp b/indra/newview/llfloateroutbox.cpp index e4ed97892e..18ed36d0f3 100644 --- a/indra/newview/llfloateroutbox.cpp +++ b/indra/newview/llfloateroutbox.cpp @@ -251,7 +251,7 @@ void LLFloaterOutbox::setupOutbox(const LLUUID& outboxId) // Set the sort order newest to oldest mOutboxInventoryPanel->getFolderViewModel()->setSorter(LLInventoryFilter::SO_FOLDERS_BY_NAME); - mOutboxInventoryPanel->getFilter()->markDefault(); + mOutboxInventoryPanel->getFilter().markDefault(); fetchOutboxContents(); diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp index 13ca73917b..21218850a6 100644 --- a/indra/newview/llfolderviewmodelinventory.cpp +++ b/indra/newview/llfolderviewmodelinventory.cpp @@ -109,7 +109,12 @@ bool LLFolderViewModelInventory::contentsReady() void LLFolderViewModelItemInventory::requestSort() { LLFolderViewModelItemCommon::requestSort(); - if (mRootViewModel.getSorter().isByDate()) + LLFolderViewFolder* folderp = dynamic_cast(mFolderViewItem); + if (folderp) + { + folderp->requestArrange(); + } + if (static_cast(mRootViewModel).getSorter().isByDate()) { // sort by date potentially affects parent folders which use a date // derived from newest item in them @@ -120,35 +125,9 @@ void LLFolderViewModelItemInventory::requestSort() } } -bool LLFolderViewModelItemInventory::potentiallyVisible() -{ - return passedFilter() // we've passed the filter - || getLastFilterGeneration() < mRootViewModel.getFilter()->getFirstSuccessGeneration() // or we don't know yet - || descendantsPassedFilter(); -} - -bool LLFolderViewModelItemInventory::passedFilter(S32 filter_generation) -{ - if (filter_generation < 0) - filter_generation = mRootViewModel.getFilter()->getFirstSuccessGeneration(); - - return mPassedFolderFilter - && (descendantsPassedFilter(filter_generation) - || (mLastFilterGeneration >= filter_generation - && mPassedFilter)); -} - -bool LLFolderViewModelItemInventory::descendantsPassedFilter(S32 filter_generation) -{ - if (filter_generation < 0) filter_generation = mRootViewModel.getFilter()->getFirstSuccessGeneration(); - return mMostFilteredDescendantGeneration >= filter_generation; -} - void LLFolderViewModelItemInventory::setPassedFilter(bool passed, bool passed_folder, S32 filter_generation) { - mPassedFilter = passed; - mPassedFolderFilter = passed_folder; - mLastFilterGeneration = filter_generation; + LLFolderViewModelItemCommon::setPassedFilter(passed, passed_folder, filter_generation); bool passed_filter_before = mPrevPassedAllFilters; mPrevPassedAllFilters = passedFilter(filter_generation); @@ -324,3 +303,8 @@ bool LLInventorySort::operator()(const LLFolderViewModelItemInventory* const& a, } } +LLFolderViewModelItemInventory::LLFolderViewModelItemInventory( class LLFolderViewModelInventory& root_view_model ) + : LLFolderViewModelItemCommon(root_view_model), + mPrevPassedAllFilters(false) +{ +} diff --git a/indra/newview/llfolderviewmodelinventory.h b/indra/newview/llfolderviewmodelinventory.h index ab67c93897..5b0ad5e46e 100644 --- a/indra/newview/llfolderviewmodelinventory.h +++ b/indra/newview/llfolderviewmodelinventory.h @@ -37,9 +37,7 @@ class LLFolderViewModelItemInventory : public LLFolderViewModelItemCommon { public: - LLFolderViewModelItemInventory(class LLFolderViewModelInventory& root_view_model) - : mRootViewModel(root_view_model) - {} + LLFolderViewModelItemInventory(class LLFolderViewModelInventory& root_view_model); virtual const LLUUID& getUUID() const = 0; virtual time_t getCreationDate() const = 0; // UTC seconds virtual void setCreationDate(time_t creation_date_utc) = 0; @@ -55,9 +53,6 @@ public: virtual EInventorySortGroup getSortGroup() const = 0; virtual LLInventoryObject* getInventoryObject() const = 0; virtual void requestSort(); - virtual bool potentiallyVisible(); - virtual bool passedFilter(S32 filter_generation = -1); - virtual bool descendantsPassedFilter(S32 filter_generation = -1); virtual void setPassedFilter(bool filtered, bool filtered_folder, S32 filter_generation); virtual void filter( LLFolderViewFilter& filter); virtual void filterChildItem( LLFolderViewModelItem* item, LLFolderViewFilter& filter); @@ -66,25 +61,36 @@ public: virtual LLToolDragAndDrop::ESource getDragSource() const = 0; protected: - class LLFolderViewModelInventory& mRootViewModel; + bool mPrevPassedAllFilters; }; class LLInventorySort { public: - LLInventorySort(U32 order = 0) - : mSortOrder(order), - mByDate(false), - mSystemToTop(false), - mFoldersByName(false) + struct Params : public LLInitParam::Block { - mByDate = (order & LLInventoryFilter::SO_DATE); - mSystemToTop = (order & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); - mFoldersByName = (order & LLInventoryFilter::SO_FOLDERS_BY_NAME); + Optional order; + + Params() + : order("order", 0) + {} + }; + + LLInventorySort(S32 order = 0) + { + fromParams(Params().order(order)); } bool isByDate() const { return mByDate; } U32 getSortOrder() const { return mSortOrder; } + void toParams(Params& p) { p.order(mSortOrder);} + void fromParams(Params& p) + { + mSortOrder = p.order; + mByDate = (mSortOrder & LLInventoryFilter::SO_DATE); + mSystemToTop = (mSortOrder & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP); + mFoldersByName = (mSortOrder & LLInventoryFilter::SO_FOLDERS_BY_NAME); + } bool operator()(const LLFolderViewModelItemInventory* const& a, const LLFolderViewModelItemInventory* const& b) const; private: diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 14616ca7ab..43c4ce1278 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -900,7 +900,7 @@ LLInventoryModel* LLInvFVBridge::getInventoryModel() const LLInventoryFilter* LLInvFVBridge::getInventoryFilter() const { LLInventoryPanel* panel = mInventoryPanel.get(); - return panel ? panel->getFilter() : NULL; + return panel ? &(panel->getFilter()) : NULL; } BOOL LLInvFVBridge::isItemInTrash() const diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index b4be927b09..7993dd04c5 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -69,7 +69,6 @@ LLInventoryFilter::LLInventoryFilter(const Params& p) mFilterModified(FILTER_NONE), mEmptyLookupMessage("InventoryNoMatchingItems"), mFilterOps(p.filter_ops), - mOrder(p.sort_order), mFilterSubString(p.substring), mCurrentGeneration(0), mFirstRequiredGeneration(0), @@ -703,15 +702,6 @@ void LLInventoryFilter::setShowFolderState(EFolderShow state) } } -void LLInventoryFilter::setSortOrder(U32 order) -{ - if (mOrder != order) - { - mOrder = order; - setModified(); - } -} - void LLInventoryFilter::markDefault() { mDefaultFilterOps = mFilterOps; @@ -944,7 +934,6 @@ LLInventoryFilter& LLInventoryFilter::operator=( const LLInventoryFilter& othe setShowFolderState(other.getShowFolderState()); setFilterPermissions(other.getFilterPermissions()); setFilterSubString(other.getFilterSubString()); - setSortOrder(other.getSortOrder()); setDateRangeLastLogoff(other.isSinceLogoff()); return *this; } @@ -961,7 +950,6 @@ void LLInventoryFilter::toParams(Params& params) const params.filter_ops.show_folder_state = getShowFolderState(); params.filter_ops.permissions = getFilterPermissions(); params.substring = getFilterSubString(); - params.sort_order = getSortOrder(); params.since_logoff = isSinceLogoff(); } @@ -980,7 +968,6 @@ void LLInventoryFilter::fromParams(const Params& params) setShowFolderState(params.filter_ops.show_folder_state); setFilterPermissions(params.filter_ops.permissions); setFilterSubString(params.substring); - setSortOrder(params.sort_order); setDateRangeLastLogoff(params.since_logoff); } @@ -1030,10 +1017,6 @@ LLInventoryFilter::EFolderShow LLInventoryFilter::getShowFolderState() const { return mFilterOps.mShowFolderState; } -U32 LLInventoryFilter::getSortOrder() const -{ - return mOrder; -} void LLInventoryFilter::setFilterCount(S32 count) { diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index af245a9c3b..b560730873 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -74,8 +74,8 @@ public: { struct DateRange : public LLInitParam::Block { - Optional min_date; - Optional max_date; + Optional min_date, + max_date; DateRange() : min_date("min_date", time_min()), @@ -115,18 +115,18 @@ public: FilterOps(const Params& = Params()); U32 mFilterTypes; - - U64 mFilterObjectTypes; // For _OBJECT - U64 mFilterWearableTypes; - U64 mFilterCategoryTypes; // For _CATEGORY + U64 mFilterObjectTypes, // For _OBJECT + mFilterWearableTypes, + mFilterLinks, + mFilterCategoryTypes; // For _CATEGORY LLUUID mFilterUUID; // for UUID - time_t mMinDate; - time_t mMaxDate; + time_t mMinDate, + mMaxDate; U32 mHoursAgo; + EFolderShow mShowFolderState; PermissionMask mPermissions; - U64 mFilterLinks; }; struct Params : public LLInitParam::Block @@ -134,14 +134,12 @@ public: Optional name; Optional filter_ops; Optional substring; - Optional sort_order; Optional since_logoff; Params() : name("name"), filter_ops(""), substring("substring"), - sort_order("sort_order"), since_logoff("since_logoff") {} }; @@ -203,9 +201,6 @@ public: void setShowFolderState( EFolderShow state); EFolderShow getShowFolderState() const; - void setSortOrder(U32 order); - U32 getSortOrder() const; - void setEmptyLookupMessage(const std::string& message); std::string getEmptyLookupMessage() const; @@ -261,8 +256,6 @@ private: bool checkAgainstFilterLinks(const class LLFolderViewModelItemInventory* listener) const; bool checkAgainstClipboard(const LLUUID& object_id) const; - U32 mOrder; - FilterOps mFilterOps; FilterOps mDefaultFilterOps; diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index e9b128e836..1b3391f7ee 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -239,13 +239,13 @@ void LLInventoryPanel::initFromParams(const LLInventoryPanel::Params& params) } // hide inbox - getFilter()->setFilterCategoryTypes(getFilter()->getFilterCategoryTypes() & ~(1ULL << LLFolderType::FT_INBOX)); - getFilter()->setFilterCategoryTypes(getFilter()->getFilterCategoryTypes() & ~(1ULL << LLFolderType::FT_OUTBOX)); + getFilter().setFilterCategoryTypes(getFilter().getFilterCategoryTypes() & ~(1ULL << LLFolderType::FT_INBOX)); + getFilter().setFilterCategoryTypes(getFilter().getFilterCategoryTypes() & ~(1ULL << LLFolderType::FT_OUTBOX)); // set the filter for the empty folder if the debug setting is on if (gSavedSettings.getBOOL("DebugHideEmptySystemFolders")) { - getFilter()->setFilterEmptySystemFolders(); + getFilter().setFilterEmptySystemFolders(); } // keep track of the clipboard state so that we avoid filtering too much @@ -285,18 +285,18 @@ void LLInventoryPanel::draw() if (mClipboardState != LLClipboard::instance().getGeneration()) { mClipboardState = LLClipboard::instance().getGeneration(); - getFilter()->setModified(LLClipboard::instance().isCutMode() ? LLInventoryFilter::FILTER_MORE_RESTRICTIVE : LLInventoryFilter::FILTER_LESS_RESTRICTIVE); + getFilter().setModified(LLClipboard::instance().isCutMode() ? LLInventoryFilter::FILTER_MORE_RESTRICTIVE : LLInventoryFilter::FILTER_LESS_RESTRICTIVE); } LLPanel::draw(); } -const LLInventoryFilter* LLInventoryPanel::getFilter() const +const LLInventoryFilter& LLInventoryPanel::getFilter() const { return getFolderViewModel()->getFilter(); } -LLInventoryFilter* LLInventoryPanel::getFilter() +LLInventoryFilter& LLInventoryPanel::getFilter() { return getFolderViewModel()->getFilter(); } @@ -304,50 +304,49 @@ LLInventoryFilter* LLInventoryPanel::getFilter() void LLInventoryPanel::setFilterTypes(U64 types, LLInventoryFilter::EFilterType filter_type) { if (filter_type == LLInventoryFilter::FILTERTYPE_OBJECT) - getFilter()->setFilterObjectTypes(types); + getFilter().setFilterObjectTypes(types); if (filter_type == LLInventoryFilter::FILTERTYPE_CATEGORY) - getFilter()->setFilterCategoryTypes(types); + getFilter().setFilterCategoryTypes(types); } U32 LLInventoryPanel::getFilterObjectTypes() const { - return getFilter()->getFilterObjectTypes(); + return getFilter().getFilterObjectTypes(); } U32 LLInventoryPanel::getFilterPermMask() const { - return getFilter()->getFilterPermissions(); + return getFilter().getFilterPermissions(); } void LLInventoryPanel::setFilterPermMask(PermissionMask filter_perm_mask) { - getFilter()->setFilterPermissions(filter_perm_mask); + getFilter().setFilterPermissions(filter_perm_mask); } void LLInventoryPanel::setFilterWearableTypes(U64 types) { - getFilter()->setFilterWearableTypes(types); + getFilter().setFilterWearableTypes(types); } void LLInventoryPanel::setFilterSubString(const std::string& string) { - getFilter()->setFilterSubString(string); + getFilter().setFilterSubString(string); } const std::string LLInventoryPanel::getFilterSubString() { - return getFilter()->getFilterSubString(); + return getFilter().getFilterSubString(); } void LLInventoryPanel::setSortOrder(U32 order) { - LLInventorySort sorter(order); - getFilter()->setSortOrder(order); + LLInventorySort sorter(order); if (order != getFolderViewModel()->getSorter().getSortOrder()) { - getFolderViewModel()->setSorter(LLInventorySort(order)); + getFolderViewModel()->setSorter(sorter); // try to keep selection onscreen, even if it wasn't to start with mFolderRoot->scrollToShowSelection(); } @@ -360,27 +359,27 @@ U32 LLInventoryPanel::getSortOrder() const void LLInventoryPanel::setSinceLogoff(BOOL sl) { - getFilter()->setDateRangeLastLogoff(sl); + getFilter().setDateRangeLastLogoff(sl); } void LLInventoryPanel::setHoursAgo(U32 hours) { - getFilter()->setHoursAgo(hours); + getFilter().setHoursAgo(hours); } void LLInventoryPanel::setFilterLinks(U64 filter_links) { - getFilter()->setFilterLinks(filter_links); + getFilter().setFilterLinks(filter_links); } void LLInventoryPanel::setShowFolderState(LLInventoryFilter::EFolderShow show) { - getFilter()->setShowFolderState(show); + getFilter().setShowFolderState(show); } LLInventoryFilter::EFolderShow LLInventoryPanel::getShowFolderState() { - return getFilter()->getShowFolderState(); + return getFilter().getShowFolderState(); } void LLInventoryPanel::modelChanged(U32 mask) @@ -473,7 +472,7 @@ void LLInventoryPanel::modelChanged(U32 mask) { if (view_folder) { - view_folder->requestSort(); + view_folder->getViewModelItem()->requestSort(); } } @@ -1088,7 +1087,7 @@ bool LLInventoryPanel::attachObject(const LLSD& userdata) BOOL LLInventoryPanel::getSinceLogoff() { - return getFilter()->isSinceLogoff(); + return getFilter().isSinceLogoff(); } // DEBUG ONLY @@ -1214,12 +1213,12 @@ void LLInventoryPanel::openInventoryPanelAndSetSelection(BOOL auto_open, const L void LLInventoryPanel::addHideFolderType(LLFolderType::EType folder_type) { - getFilter()->setFilterCategoryTypes(getFilter()->getFilterCategoryTypes() & ~(1ULL << folder_type)); + getFilter().setFilterCategoryTypes(getFilter().getFilterCategoryTypes() & ~(1ULL << folder_type)); } BOOL LLInventoryPanel::getIsHiddenFolderType(LLFolderType::EType folder_type) const { - return !(getFilter()->getFilterCategoryTypes() & (1ULL << folder_type)); + return !(getFilter().getFilterCategoryTypes() & (1ULL << folder_type)); } void LLInventoryPanel::addItemID( const LLUUID& id, LLFolderViewItem* itemp ) @@ -1321,7 +1320,7 @@ public: { LLInventoryPanel::initFromParams(p); // turn on inbox for recent items - getFilter()->setFilterCategoryTypes(getFilter()->getFilterCategoryTypes() | (1ULL << LLFolderType::FT_INBOX)); + getFilter().setFilterCategoryTypes(getFilter().getFilterCategoryTypes() | (1ULL << LLFolderType::FT_INBOX)); } protected: diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h index b66b53f642..e9bfcb0ccf 100644 --- a/indra/newview/llinventorypanel.h +++ b/indra/newview/llinventorypanel.h @@ -120,6 +120,12 @@ public: {} }; + struct InventoryState : public LLInitParam::Block + { + Mandatory filter; + Mandatory sort; + }; + //-------------------------------------------------------------------- // Initialization //-------------------------------------------------------------------- @@ -155,8 +161,8 @@ public: void setSelection(const LLUUID& obj_id, BOOL take_keyboard_focus); void setSelectCallback(const boost::function& items, BOOL user_action)>& cb); void clearSelection(); - LLInventoryFilter* getFilter(); - const LLInventoryFilter* getFilter() const; + LLInventoryFilter& getFilter(); + const LLInventoryFilter& getFilter() const; void setFilterTypes(U64 filter, LLInventoryFilter::EFilterType = LLInventoryFilter::FILTERTYPE_OBJECT); U32 getFilterObjectTypes() const; void setFilterPermMask(PermissionMask filter_perm_mask); diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 1a4f3708ac..9225ea3d53 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -247,10 +247,7 @@ void LLLandmarksPanel::onSearchEdit(const std::string& string) LLPlacesInventoryPanel* inventory_list = dynamic_cast(tab->getAccordionView()); if (NULL == inventory_list) continue; - if (inventory_list->getFilter()) - { - filter_list(inventory_list, string); - } + filter_list(inventory_list, string); } if (sFilterSubString != string) @@ -365,9 +362,6 @@ void LLLandmarksPanel::onSelectorButtonClicked() void LLLandmarksPanel::updateShowFolderState() { - if (!mLandmarksInventoryPanel->getFilter()) - return; - bool show_all_folders = mLandmarksInventoryPanel->getFilterSubString().empty(); if (show_all_folders) { @@ -547,7 +541,7 @@ void LLLandmarksPanel::initFavoritesInventoryPanel() mFavoritesInventoryPanel = getChild("favorites_list"); initLandmarksPanel(mFavoritesInventoryPanel); - mFavoritesInventoryPanel->getFilter()->setEmptyLookupMessage("FavoritesNoMatchingItems"); + mFavoritesInventoryPanel->getFilter().setEmptyLookupMessage("FavoritesNoMatchingItems"); initAccordion("tab_favorites", mFavoritesInventoryPanel, true); } @@ -558,12 +552,7 @@ void LLLandmarksPanel::initLandmarksInventoryPanel() initLandmarksPanel(mLandmarksInventoryPanel); - // Check if mLandmarksInventoryPanel is properly initialized and has a Filter created. - // In case of a dummy widget getFilter() will return NULL. - if (mLandmarksInventoryPanel->getFilter()) - { - mLandmarksInventoryPanel->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); - } + mLandmarksInventoryPanel->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); // subscribe to have auto-rename functionality while creating New Folder mLandmarksInventoryPanel->setSelectCallback(boost::bind(&LLInventoryPanel::onSelectionChange, mLandmarksInventoryPanel, _1, _2)); @@ -599,12 +588,7 @@ void LLLandmarksPanel::initLibraryInventoryPanel() void LLLandmarksPanel::initLandmarksPanel(LLPlacesInventoryPanel* inventory_list) { - // In case of a dummy widget further we have no Folder View widget and no Filter, - // so further initialization leads to crash. - if (!inventory_list->getFilter()) - return; - - inventory_list->getFilter()->setEmptyLookupMessage("PlacesNoMatchingItems"); + inventory_list->getFilter().setEmptyLookupMessage("PlacesNoMatchingItems"); inventory_list->setFilterTypes(0x1 << LLInventoryType::IT_LANDMARK); inventory_list->setSelectCallback(boost::bind(&LLLandmarksPanel::onSelectionChange, this, inventory_list, _1, _2)); diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index fea27b37d3..e1aa70cc4a 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -89,9 +89,9 @@ public: static void selectNoTypes(void* user_data); private: LLPanelMainInventory* mPanelMainInventory; - LLSpinCtrl* mSpinSinceDays; - LLSpinCtrl* mSpinSinceHours; - LLInventoryFilter* mFilter; + LLSpinCtrl* mSpinSinceDays; + LLSpinCtrl* mSpinSinceHours; + LLInventoryFilter* mFilter; }; ///---------------------------------------------------------------------------- @@ -131,7 +131,7 @@ BOOL LLPanelMainInventory::postBuild() mFilterTabs = getChild("inventory filter tabs"); mFilterTabs->setCommitCallback(boost::bind(&LLPanelMainInventory::onFilterSelected, this)); - //panel->getFilter()->markDefault(); + //panel->getFilter().markDefault(); // Set up the default inv. panel/filter settings. mActivePanel = getChild("All Items"); @@ -139,7 +139,7 @@ BOOL LLPanelMainInventory::postBuild() { // "All Items" is the previous only view, so it gets the InventorySortOrder mActivePanel->setSortOrder(gSavedSettings.getU32(LLInventoryPanel::DEFAULT_SORT_ORDER)); - mActivePanel->getFilter()->markDefault(); + mActivePanel->getFilter().markDefault(); mActivePanel->getRootFolder()->applyFunctorRecursively(*mSavedFolderState); mActivePanel->setSelectCallback(boost::bind(&LLPanelMainInventory::onSelectionChange, this, mActivePanel, _1, _2)); mResortActivePanel = true; @@ -150,7 +150,7 @@ BOOL LLPanelMainInventory::postBuild() recent_items_panel->setSinceLogoff(TRUE); recent_items_panel->setSortOrder(LLInventoryFilter::SO_DATE); recent_items_panel->setShowFolderState(LLInventoryFilter::SHOW_NON_EMPTY_FOLDERS); - recent_items_panel->getFilter()->markDefault(); + recent_items_panel->getFilter().markDefault(); recent_items_panel->setSelectCallback(boost::bind(&LLPanelMainInventory::onSelectionChange, this, recent_items_panel, _1, _2)); } @@ -169,14 +169,14 @@ BOOL LLPanelMainInventory::postBuild() // Note that the "All Items" settings do not persist. if(recent_items_panel) { - if(savedFilterState.has(recent_items_panel->getFilter()->getName())) + if(savedFilterState.has(recent_items_panel->getFilter().getName())) { LLSD recent_items = savedFilterState.get( - recent_items_panel->getFilter()->getName()); + recent_items_panel->getFilter().getName()); LLInventoryFilter::Params p; LLParamSDParser parser; parser.readSD(recent_items, p); - recent_items_panel->getFilter()->fromParams(p); + recent_items_panel->getFilter().fromParams(p); } } @@ -213,29 +213,29 @@ LLPanelMainInventory::~LLPanelMainInventory( void ) LLInventoryPanel* all_items_panel = getChild("All Items"); if (all_items_panel) { - LLInventoryFilter* filter = all_items_panel->getFilter(); - if (filter) + LLSD filterState; + LLInventoryPanel::InventoryState p; + all_items_panel->getFilter().toParams(p.filter); + all_items_panel->getRootViewModel().getSorter().toParams(p.sort); + if (p.validateBlock(false)) { - LLSD filterState; - LLInventoryFilter::Params p; - filter->toParams(p); - if (p.validateBlock(false)) - { - LLParamSDParser().writeSD(filterState, p); - filterRoot[filter->getName()] = filterState; - } + LLParamSDParser().writeSD(filterState, p); + filterRoot[all_items_panel->getName()] = filterState; } } - LLInventoryFilter* filter = findChild("Recent Items")->getFilter(); - if (filter) + LLInventoryPanel* panel = findChild("Recent Items"); + if (panel) { LLSD filterState; - LLInventoryFilter::Params p; - filter->toParams(p); - LLParamSDParser parser; - parser.writeSD(filterState, p); - filterRoot[filter->getName()] = filterState; + LLInventoryPanel::InventoryState p; + panel->getFilter().toParams(p.filter); + panel->getRootViewModel().getSorter().toParams(p.sort); + if (p.validateBlock(false)) + { + LLParamSDParser().writeSD(filterState, p); + filterRoot[panel->getName()] = filterState; + } } std::ostringstream filterSaveName; @@ -321,7 +321,7 @@ void LLPanelMainInventory::doCreate(const LLSD& userdata) void LLPanelMainInventory::resetFilters() { LLFloaterInventoryFinder *finder = getFinder(); - getActivePanel()->getFilter()->resetDefault(); + getActivePanel()->getFilter().resetDefault(); if (finder) { finder->updateElementsFromFilter(); @@ -426,7 +426,7 @@ void LLPanelMainInventory::onFilterEdit(const std::string& search_string ) } // save current folder open state if no filter currently applied - if (!mActivePanel->getFilter()->isNotDefault()) + if (!mActivePanel->getFilter().isNotDefault()) { mSavedFolderState->setApply(FALSE); mActivePanel->getRootFolder()->applyFunctorRecursively(*mSavedFolderState); @@ -488,13 +488,13 @@ void LLPanelMainInventory::onFilterSelected() } setFilterSubString(mFilterSubString); - LLInventoryFilter* filter = mActivePanel->getFilter(); + LLInventoryFilter& filter = mActivePanel->getFilter(); LLFloaterInventoryFinder *finder = getFinder(); if (finder) { - finder->changeFilter(filter); + finder->changeFilter(&filter); } - if (filter->isActive()) + if (filter.isActive()) { // If our filter is active we may be the first thing requiring a fetch so we better start it here. LLInventoryModelBackgroundFetch::instance().start(); @@ -607,7 +607,7 @@ void LLPanelMainInventory::onFocusReceived() void LLPanelMainInventory::setFilterTextFromFilter() { - mFilterText = mActivePanel->getFilter()->getFilterText(); + mFilterText = mActivePanel->getFilter().getFilterText(); } void LLPanelMainInventory::toggleFindOptions() @@ -657,7 +657,7 @@ LLFloaterInventoryFinder* LLPanelMainInventory::getFinder() LLFloaterInventoryFinder::LLFloaterInventoryFinder(LLPanelMainInventory* inventory_view) : LLFloater(LLSD()), mPanelMainInventory(inventory_view), - mFilter(inventory_view->getPanel()->getFilter()) + mFilter(&inventory_view->getPanel()->getFilter()) { buildFromFile("floater_inventory_view_finder.xml"); updateElementsFromFilter(); @@ -1082,14 +1082,14 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) const LLUUID& item_id = static_cast(current_item->getViewModelItem())->getUUID(); const std::string &item_name = current_item->getViewModelItem()->getName(); mFilterSubString = item_name; - LLInventoryFilter *filter = mActivePanel->getFilter(); - filter->setFilterSubString(item_name); + LLInventoryFilter &filter = mActivePanel->getFilter(); + filter.setFilterSubString(item_name); mFilterEditor->setText(item_name); mFilterEditor->setFocus(TRUE); - filter->setFilterUUID(item_id); - filter->setShowFolderState(LLInventoryFilter::SHOW_NON_EMPTY_FOLDERS); - filter->setFilterLinks(LLInventoryFilter::FILTERLINK_ONLY_LINKS); + filter.setFilterUUID(item_id); + filter.setShowFolderState(LLInventoryFilter::SHOW_NON_EMPTY_FOLDERS); + filter.setFilterLinks(LLInventoryFilter::FILTERLINK_ONLY_LINKS); } } diff --git a/indra/newview/llpanelmarketplaceinbox.cpp b/indra/newview/llpanelmarketplaceinbox.cpp index 3547156197..ea0521e3a7 100644 --- a/indra/newview/llpanelmarketplaceinbox.cpp +++ b/indra/newview/llpanelmarketplaceinbox.cpp @@ -95,13 +95,13 @@ LLInventoryPanel * LLPanelMarketplaceInbox::setupInventoryPanel() // Set the sort order newest to oldest mInventoryPanel->getFolderViewModel()->setSorter(LLInventoryFilter::SO_DATE); - mInventoryPanel->getFilter()->markDefault(); + mInventoryPanel->getFilter().markDefault(); // Set selection callback for proper update of inventory status buttons mInventoryPanel->setSelectCallback(boost::bind(&LLPanelMarketplaceInbox::onSelectionChange, this)); // Set up the note to display when the inbox is empty - mInventoryPanel->getFilter()->setEmptyLookupMessage("InventoryInboxNoItems"); + mInventoryPanel->getFilter().setEmptyLookupMessage("InventoryInboxNoItems"); // Hide the placeholder text inbox_inventory_placeholder->setVisible(FALSE); diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index 8ad3929999..0d3fbe66d7 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -182,9 +182,9 @@ LLInboxFolderViewItem::LLInboxFolderViewItem(const Params& p) #endif } -BOOL LLInboxFolderViewItem::addToFolder(LLFolderViewFolder* folder) +void LLInboxFolderViewItem::addToFolder(LLFolderViewFolder* folder) { - BOOL retval = LLFolderViewItem::addToFolder(folder); + LLFolderViewItem::addToFolder(folder); #if SUPPORTING_FRESH_ITEM_COUNT // Compute freshness if our parent is the root folder for the inbox @@ -193,8 +193,6 @@ BOOL LLInboxFolderViewItem::addToFolder(LLFolderViewFolder* folder) computeFreshness(); } #endif - - return retval; } BOOL LLInboxFolderViewItem::handleDoubleClick(S32 x, S32 y, MASK mask) diff --git a/indra/newview/llpanelmarketplaceinboxinventory.h b/indra/newview/llpanelmarketplaceinboxinventory.h index d8b8a2fe63..098969aca6 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.h +++ b/indra/newview/llpanelmarketplaceinboxinventory.h @@ -95,7 +95,7 @@ public: LLInboxFolderViewItem(const Params& p); - BOOL addToFolder(LLFolderViewFolder* folder); + void addToFolder(LLFolderViewFolder* folder); BOOL handleDoubleClick(S32 x, S32 y, MASK mask); void draw(); diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 4f2c515bde..82956beb3d 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1567,11 +1567,8 @@ void LLPanelObjectInventory::reset() mFolders = LLUICtrlFactory::create(p); // this ensures that we never say "searching..." or "no items found" //TODO RN: make this happen by manipulating filter object directly - LLInventoryFilter* inventoryFilter = dynamic_cast(mFolders->getFolderViewModel()->getFilter()); - if(inventoryFilter) - { - inventoryFilter->setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); - } + LLInventoryFilter& inventoryFilter = dynamic_cast(mFolders->getFolderViewModel()->getFilter()); + inventoryFilter.setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 2d3f144588..65f0290060 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -455,7 +455,7 @@ BOOL LLFloaterTexturePicker::postBuild() // Commented out to scroll to currently selected texture. See EXT-5403. // // store this filter as the default one - // mInventoryPanel->getRootFolder()->getFilter()->markDefault(); + // mInventoryPanel->getRootFolder()->getFilter().markDefault(); // Commented out to stop opening all folders with textures // mInventoryPanel->openDefaultFolderForType(LLFolderType::FT_TEXTURE); @@ -638,10 +638,10 @@ void LLFloaterTexturePicker::draw() LLFolderView* folder_view = mInventoryPanel->getRootFolder(); if (!folder_view) return; - LLFolderViewFilter* filter = static_cast(folder_view->getFolderViewModel())->getFilter(); + LLFolderViewFilter& filter = static_cast(folder_view->getFolderViewModel())->getFilter(); - bool is_filter_active = folder_view->getViewModelItem()->getLastFilterGeneration() < filter->getCurrentGeneration() && - filter->isNotDefault(); + bool is_filter_active = folder_view->getViewModelItem()->getLastFilterGeneration() < filter.getCurrentGeneration() && + filter.isNotDefault(); // After inventory panel filter is applied we have to update // constraint rect for the selected item because of folder view @@ -1012,7 +1012,7 @@ void LLFloaterTexturePicker::onFilterEdit(const std::string& search_string ) else if (mInventoryPanel->getFilterSubString().empty()) { // first letter in search term, save existing folder open state - if (!mInventoryPanel->getFilter()->isNotDefault()) + if (!mInventoryPanel->getFilter().isNotDefault()) { mSavedFolderState.setApply(FALSE); mInventoryPanel->getRootFolder()->applyFunctorRecursively(mSavedFolderState); -- cgit v1.3 From be61b5be2f4089e12ca25ca1ece13bd0fdaea543 Mon Sep 17 00:00:00 2001 From: Gilbert Gonzales Date: Wed, 29 Aug 2012 19:18:25 -0700 Subject: CHUI-305: Problem: The 'resident picker' had multiple parents and due to the design of the resident picker it can have only one parent. Having multiple parents caused both parents to fight for depth ordering...which caused the flickering. Resolution: Now multiple 'resident pickers' can exist and they are coupled to the floater that spawned then. Meaning that when the parent floater closes, the 'resident picker' floater will also close. In addition, a shadow frustum eminates from the button that opened the 'resident picker'. --- indra/llui/llfloater.cpp | 7 +++ indra/newview/llavataractions.cpp | 10 +++- indra/newview/llavataractions.h | 3 +- indra/newview/llfloateravatarpicker.cpp | 79 ++++++++++++++++++++++++++++++-- indra/newview/llfloateravatarpicker.h | 9 +++- indra/newview/llfloatercolorpicker.cpp | 2 +- indra/newview/llfloatergodtools.cpp | 6 ++- indra/newview/llfloaterland.cpp | 12 +++-- indra/newview/llfloaterregioninfo.cpp | 26 +++++++++-- indra/newview/llfloaterreporter.cpp | 7 ++- indra/newview/llfloatersellland.cpp | 3 +- indra/newview/llimfloater.cpp | 6 ++- indra/newview/llimfloatercontainer.cpp | 4 +- indra/newview/llinventorypanel.cpp | 2 +- indra/newview/llpanelblockedlist.cpp | 26 +++++++++-- indra/newview/llpanelblockedlist.h | 2 + indra/newview/llpanelgroupinvite.cpp | 6 ++- indra/newview/llpanelmaininventory.cpp | 2 +- indra/newview/llpanelobjectinventory.cpp | 2 +- indra/newview/llpanelpeople.cpp | 20 +++++++- indra/newview/llpanelpeople.h | 3 ++ indra/newview/llsidepanelinventory.cpp | 2 +- 22 files changed, 201 insertions(+), 38 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index 8145d6d347..52812dc050 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -713,6 +713,13 @@ void LLFloater::closeFloater(bool app_quitting) make_ui_sound("UISndWindowClose"); } + //If floater is a dependent, remove it from parent (dependee) + LLFloater* dependee = mDependeeHandle.get(); + if (dependee) + { + dependee->removeDependentFloater(this); + } + // now close dependent floater for(handle_set_iter_t dependent_it = mDependents.begin(); dependent_it != mDependents.end(); ) diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index 93e8b9ca40..9a0c517ee0 100755 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -744,12 +744,13 @@ std::set LLAvatarActions::getInventorySelectedUUIDs() } //static -void LLAvatarActions::shareWithAvatars() +void LLAvatarActions::shareWithAvatars(LLPanel * panel) { using namespace action_give_inventory; + LLFloater* root_floater = gFloaterView->getParentFloater(panel); LLFloaterAvatarPicker* picker = - LLFloaterAvatarPicker::show(boost::bind(give_inventory, _1, _2), TRUE, FALSE); + LLFloaterAvatarPicker::show(boost::bind(give_inventory, _1, _2), TRUE, FALSE, FALSE, root_floater->getName()); if (!picker) { return; @@ -757,6 +758,11 @@ void LLAvatarActions::shareWithAvatars() picker->setOkBtnEnableCb(boost::bind(is_give_inventory_acceptable)); picker->openFriendsTab(); + + if (root_floater) + { + root_floater->addDependentFloater(picker); + } LLNotificationsUtil::add("ShareNotification"); } diff --git a/indra/newview/llavataractions.h b/indra/newview/llavataractions.h index 259e87c336..9d9ce966b5 100644 --- a/indra/newview/llavataractions.h +++ b/indra/newview/llavataractions.h @@ -37,6 +37,7 @@ class LLAvatarName; class LLInventoryPanel; class LLFloater; +class LLPanel; /** * Friend-related actions (add, remove, offer teleport, etc) @@ -117,7 +118,7 @@ public: /** * Share items with the picked avatars. */ - static void shareWithAvatars(); + static void shareWithAvatars(LLPanel * panel); /** * Block/unblock the avatar. diff --git a/indra/newview/llfloateravatarpicker.cpp b/indra/newview/llfloateravatarpicker.cpp index 47acdf7057..4ac022e350 100644 --- a/indra/newview/llfloateravatarpicker.cpp +++ b/indra/newview/llfloateravatarpicker.cpp @@ -49,6 +49,8 @@ #include "llscrolllistcell.h" #include "lltabcontainer.h" #include "lluictrlfactory.h" +#include "llfocusmgr.h" +#include "lldraghandle.h" #include "message.h" //#include "llsdserialize.h" @@ -56,14 +58,20 @@ //put it back as a member once the legacy path is out? static std::map sAvatarNameMap; +const F32 CONTEXT_CONE_IN_ALPHA = 0.0f; +const F32 CONTEXT_CONE_OUT_ALPHA = 1.f; +const F32 CONTEXT_FADE_TIME = 0.08f; + LLFloaterAvatarPicker* LLFloaterAvatarPicker::show(select_callback_t callback, BOOL allow_multiple, BOOL closeOnSelect, - BOOL skip_agent) + BOOL skip_agent, + const std::string& name, + LLView * frustumOrigin) { // *TODO: Use a key to allow this not to be an effective singleton LLFloaterAvatarPicker* floater = - LLFloaterReg::showTypedInstance("avatar_picker"); + LLFloaterReg::showTypedInstance("avatar_picker", LLSD(name)); if (!floater) { llwarns << "Cannot instantiate avatar picker" << llendl; @@ -85,6 +93,11 @@ LLFloaterAvatarPicker* LLFloaterAvatarPicker::show(select_callback_t callback, floater->getChild("cancel_btn")->setLabel(close_string); } + if(frustumOrigin) + { + floater->mFrustumOrigin = frustumOrigin->getHandle(); + } + return floater; } @@ -93,7 +106,8 @@ LLFloaterAvatarPicker::LLFloaterAvatarPicker(const LLSD& key) : LLFloater(key), mNumResultsReturned(0), mNearMeListComplete(FALSE), - mCloseOnSelect(FALSE) + mCloseOnSelect(FALSE), + mContextConeOpacity ( 0.f ) { mCommitCallbackRegistrar.add("Refresh.FriendList", boost::bind(&LLFloaterAvatarPicker::populateFriend, this)); } @@ -340,8 +354,67 @@ void LLFloaterAvatarPicker::populateFriend() friends_scroller->sortByColumnIndex(0, TRUE); } +void LLFloaterAvatarPicker::drawFrustum() +{ + if(mFrustumOrigin.get()) + { + LLView * frustumOrigin = mFrustumOrigin.get(); + LLRect origin_rect; + frustumOrigin->localRectToOtherView(frustumOrigin->getLocalRect(), &origin_rect, this); + // draw context cone connecting color picker with color swatch in parent floater + LLRect local_rect = getLocalRect(); + if (hasFocus() && frustumOrigin->isInVisibleChain() && mContextConeOpacity > 0.001f) + { + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + LLGLEnable(GL_CULL_FACE); + gGL.begin(LLRender::QUADS); + { + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_IN_ALPHA * mContextConeOpacity); + gGL.vertex2i(origin_rect.mLeft, origin_rect.mTop); + gGL.vertex2i(origin_rect.mRight, origin_rect.mTop); + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_OUT_ALPHA * mContextConeOpacity); + gGL.vertex2i(local_rect.mRight, local_rect.mTop); + gGL.vertex2i(local_rect.mLeft, local_rect.mTop); + + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_OUT_ALPHA * mContextConeOpacity); + gGL.vertex2i(local_rect.mLeft, local_rect.mTop); + gGL.vertex2i(local_rect.mLeft, local_rect.mBottom); + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_IN_ALPHA * mContextConeOpacity); + gGL.vertex2i(origin_rect.mLeft, origin_rect.mBottom); + gGL.vertex2i(origin_rect.mLeft, origin_rect.mTop); + + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_OUT_ALPHA * mContextConeOpacity); + gGL.vertex2i(local_rect.mRight, local_rect.mBottom); + gGL.vertex2i(local_rect.mRight, local_rect.mTop); + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_IN_ALPHA * mContextConeOpacity); + gGL.vertex2i(origin_rect.mRight, origin_rect.mTop); + gGL.vertex2i(origin_rect.mRight, origin_rect.mBottom); + + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_OUT_ALPHA * mContextConeOpacity); + gGL.vertex2i(local_rect.mLeft, local_rect.mBottom); + gGL.vertex2i(local_rect.mRight, local_rect.mBottom); + gGL.color4f(0.f, 0.f, 0.f, CONTEXT_CONE_IN_ALPHA * mContextConeOpacity); + gGL.vertex2i(origin_rect.mRight, origin_rect.mBottom); + gGL.vertex2i(origin_rect.mLeft, origin_rect.mBottom); + } + gGL.end(); + } + + if (gFocusMgr.childHasMouseCapture(getDragHandle())) + { + mContextConeOpacity = lerp(mContextConeOpacity, gSavedSettings.getF32("PickerContextOpacity"), LLCriticalDamp::getInterpolant(CONTEXT_FADE_TIME)); + } + else + { + mContextConeOpacity = lerp(mContextConeOpacity, 0.f, LLCriticalDamp::getInterpolant(CONTEXT_FADE_TIME)); + } + } +} + void LLFloaterAvatarPicker::draw() { + drawFrustum(); + // sometimes it is hard to determine when Select/Ok button should be disabled (see LLAvatarActions::shareWithAvatars). // lets check this via mOkButtonValidateSignal callback periodically. static LLFrameTimer timer; diff --git a/indra/newview/llfloateravatarpicker.h b/indra/newview/llfloateravatarpicker.h index 7067cd7b3e..46b685ad02 100644 --- a/indra/newview/llfloateravatarpicker.h +++ b/indra/newview/llfloateravatarpicker.h @@ -34,7 +34,7 @@ class LLAvatarName; class LLScrollListCtrl; -class LLFloaterAvatarPicker : public LLFloater +class LLFloaterAvatarPicker :public LLFloater { public: typedef boost::signals2::signal validate_signal_t; @@ -46,7 +46,9 @@ public: static LLFloaterAvatarPicker* show(select_callback_t callback, BOOL allow_multiple = FALSE, BOOL closeOnSelect = FALSE, - BOOL skip_agent = FALSE); + BOOL skip_agent = FALSE, + const std::string& name = "", + LLView * frustumOrigin = NULL); LLFloaterAvatarPicker(const LLSD& key); virtual ~LLFloaterAvatarPicker(); @@ -86,6 +88,7 @@ private: void setAllowMultiple(BOOL allow_multiple); LLScrollListCtrl* getActiveList(); + void drawFrustum(); virtual void draw(); virtual BOOL handleKeyHere(KEY key, MASK mask); @@ -94,6 +97,8 @@ private: BOOL mNearMeListComplete; BOOL mCloseOnSelect; BOOL mExcludeAgentFromSearchResults; + LLHandle mFrustumOrigin; + F32 mContextConeOpacity; validate_signal_t mOkButtonValidateSignal; select_callback_t mSelectionCallback; diff --git a/indra/newview/llfloatercolorpicker.cpp b/indra/newview/llfloatercolorpicker.cpp index 05d73c2416..1cebdcffca 100644 --- a/indra/newview/llfloatercolorpicker.cpp +++ b/indra/newview/llfloatercolorpicker.cpp @@ -486,7 +486,7 @@ void LLFloaterColorPicker::draw() mSwatch->localRectToOtherView(mSwatch->getLocalRect(), &swatch_rect, this); // draw context cone connecting color picker with color swatch in parent floater LLRect local_rect = getLocalRect(); - if (gFocusMgr.childHasKeyboardFocus(this) && mSwatch->isInVisibleChain() && mContextConeOpacity > 0.001f) + if (hasFocus() && mSwatch->isInVisibleChain() && mContextConeOpacity > 0.001f) { gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); LLGLEnable(GL_CULL_FACE); diff --git a/indra/newview/llfloatergodtools.cpp b/indra/newview/llfloatergodtools.cpp index fb905eae11..51745fb191 100644 --- a/indra/newview/llfloatergodtools.cpp +++ b/indra/newview/llfloatergodtools.cpp @@ -1123,11 +1123,13 @@ bool LLPanelObjectTools::callbackSimWideDeletes( const LLSD& notification, const void LLPanelObjectTools::onClickSet() { - LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLPanelObjectTools::callbackAvatarID, this, _1,_2)); + LLView * button = getChildView("Set Target"); + LLFloater * root_floater = gFloaterView->getParentFloater(this); + LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLPanelObjectTools::callbackAvatarID, this, _1,_2), FALSE, FALSE, FALSE, root_floater->getName(), button); // grandparent is a floater, which can have a dependent if (picker) { - gFloaterView->getParentFloater(this)->addDependentFloater(picker); + root_floater->addDependentFloater(picker); } } diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp index 55f3d548ec..64336b5cf7 100644 --- a/indra/newview/llfloaterland.cpp +++ b/indra/newview/llfloaterland.cpp @@ -2733,11 +2733,13 @@ void LLPanelLandAccess::onCommitAny(LLUICtrl *ctrl, void *userdata) void LLPanelLandAccess::onClickAddAccess() { + LLView * button = getChildView("add_allowed"); + LLFloater * root_floater = gFloaterView->getParentFloater(this); LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show( - boost::bind(&LLPanelLandAccess::callbackAvatarCBAccess, this, _1)); + boost::bind(&LLPanelLandAccess::callbackAvatarCBAccess, this, _1), FALSE, FALSE, FALSE, root_floater->getName(), button); if (picker) { - gFloaterView->getParentFloater(this)->addDependentFloater(picker); + root_floater->addDependentFloater(picker); } } @@ -2782,11 +2784,13 @@ void LLPanelLandAccess::onClickRemoveAccess(void* data) // static void LLPanelLandAccess::onClickAddBanned() { + LLView * button = getChildView("add_banned"); + LLFloater * root_floater = gFloaterView->getParentFloater(this); LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show( - boost::bind(&LLPanelLandAccess::callbackAvatarCBBanned, this, _1)); + boost::bind(&LLPanelLandAccess::callbackAvatarCBBanned, this, _1), FALSE, FALSE, FALSE, root_floater->getName(), button); if (picker) { - gFloaterView->getParentFloater(this)->addDependentFloater(picker); + root_floater->addDependentFloater(picker); } } diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index fe29bb38c7..4aebd9a4f4 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -648,7 +648,7 @@ void LLPanelRegionGeneralInfo::onClickKick() // this depends on the grandparent view being a floater // in order to set up floater dependency LLFloater* parent_floater = gFloaterView->getParentFloater(this); - LLFloater* child_floater = LLFloaterAvatarPicker::show(boost::bind(&LLPanelRegionGeneralInfo::onKickCommit, this, _1), FALSE, TRUE); + LLFloater* child_floater = LLFloaterAvatarPicker::show(boost::bind(&LLPanelRegionGeneralInfo::onKickCommit, this, _1), FALSE, TRUE, FALSE, parent_floater->getName()); if (child_floater) { parent_floater->addDependentFloater(child_floater); @@ -924,7 +924,12 @@ BOOL LLPanelRegionDebugInfo::sendUpdate() void LLPanelRegionDebugInfo::onClickChooseAvatar() { - LLFloaterAvatarPicker::show(boost::bind(&LLPanelRegionDebugInfo::callbackAvatarID, this, _1, _2), FALSE, TRUE); + LLFloater* parent_floater = gFloaterView->getParentFloater(this); + LLFloater * child_floater = LLFloaterAvatarPicker::show(boost::bind(&LLPanelRegionDebugInfo::callbackAvatarID, this, _1, _2), FALSE, TRUE, FALSE, parent_floater->getName()); + if (child_floater) + { + parent_floater->addDependentFloater(child_floater); + } } @@ -1471,7 +1476,7 @@ void LLPanelEstateInfo::onClickKickUser() // this depends on the grandparent view being a floater // in order to set up floater dependency LLFloater* parent_floater = gFloaterView->getParentFloater(this); - LLFloater* child_floater = LLFloaterAvatarPicker::show(boost::bind(&LLPanelEstateInfo::onKickUserCommit, this, _1), FALSE, TRUE); + LLFloater* child_floater = LLFloaterAvatarPicker::show(boost::bind(&LLPanelEstateInfo::onKickUserCommit, this, _1), FALSE, TRUE, FALSE, parent_floater->getName()); if (child_floater) { parent_floater->addDependentFloater(child_floater); @@ -1646,8 +1651,21 @@ bool LLPanelEstateInfo::accessAddCore2(const LLSD& notification, const LLSD& res } LLEstateAccessChangeInfo* change_info = new LLEstateAccessChangeInfo(notification["payload"]); + //Get parent floater name + LLPanelEstateInfo* panel = LLFloaterRegionInfo::getPanelEstate(); + LLFloater* parent_floater = panel ? gFloaterView->getParentFloater(panel) : NULL; + const std::string& parent_floater_name = parent_floater ? parent_floater->getName() : ""; + // avatar picker yes multi-select, yes close-on-select - LLFloaterAvatarPicker::show(boost::bind(&LLPanelEstateInfo::accessAddCore3, _1, (void*)change_info), TRUE, TRUE); + LLFloater* child_floater = LLFloaterAvatarPicker::show(boost::bind(&LLPanelEstateInfo::accessAddCore3, _1, (void*)change_info), + TRUE, TRUE, FALSE, parent_floater_name); + + //Allows the closed parent floater to close the child floater (avatar picker) + if (child_floater) + { + parent_floater->addDependentFloater(child_floater); + } + return false; } diff --git a/indra/newview/llfloaterreporter.cpp b/indra/newview/llfloaterreporter.cpp index 3ec1e372eb..206bcb2c7e 100644 --- a/indra/newview/llfloaterreporter.cpp +++ b/indra/newview/llfloaterreporter.cpp @@ -285,10 +285,13 @@ void LLFloaterReporter::getObjectInfo(const LLUUID& object_id) void LLFloaterReporter::onClickSelectAbuser() { - LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLFloaterReporter::callbackAvatarID, this, _1, _2), FALSE, TRUE ); + LLView * button = getChildView("select_abuser", TRUE); + + LLFloater * root_floater = gFloaterView->getParentFloater(this); + LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLFloaterReporter::callbackAvatarID, this, _1, _2), FALSE, TRUE, FALSE, root_floater->getName(), button); if (picker) { - gFloaterView->getParentFloater(this)->addDependentFloater(picker); + root_floater->addDependentFloater(picker); } } diff --git a/indra/newview/llfloatersellland.cpp b/indra/newview/llfloatersellland.cpp index 64c0dfa023..2ac82c553b 100644 --- a/indra/newview/llfloatersellland.cpp +++ b/indra/newview/llfloatersellland.cpp @@ -392,7 +392,8 @@ void LLFloaterSellLandUI::onChangeValue(LLUICtrl *ctrl, void *userdata) void LLFloaterSellLandUI::doSelectAgent() { - LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLFloaterSellLandUI::callbackAvatarPick, this, _1, _2), FALSE, TRUE); + LLView * button = getChildView("sell_to_select_agent"); + LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLFloaterSellLandUI::callbackAvatarPick, this, _1, _2), FALSE, TRUE, FALSE, this->getName(), button); // grandparent is a floater, in order to set up dependency if (picker) { diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 1c6445610f..732a204ddf 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -359,7 +359,9 @@ BOOL LLIMFloater::postBuild() void LLIMFloater::onAddButtonClicked() { - LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLIMFloater::addSessionParticipants, this, _1), TRUE, TRUE); + LLView * button = getChildView("toolbar_panel")->getChildView("add_btn"); + LLFloater* root_floater = gFloaterView->getParentFloater(this); + LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLIMFloater::addSessionParticipants, this, _1), TRUE, TRUE, FALSE, root_floater->getName(), button); if (!picker) { return; @@ -367,7 +369,7 @@ void LLIMFloater::onAddButtonClicked() // Need to disable 'ok' button when selected users are already in conversation. picker->setOkBtnEnableCb(boost::bind(&LLIMFloater::canAddSelectedToChat, this, _1)); - LLFloater* root_floater = gFloaterView->getParentFloater(this); + if (root_floater) { root_floater->addDependentFloater(picker); diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 4d0bd623f8..bfe4afe80b 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -415,8 +415,10 @@ void LLIMFloaterContainer::updateState(bool collapse, S32 delta_width) void LLIMFloaterContainer::onAddButtonClicked() { - LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLIMFloaterContainer::onAvatarPicked, this, _1), TRUE, TRUE, TRUE); + LLView * button = getChildView("conversations_pane_buttons_expanded")->getChildView("add_btn"); LLFloater* root_floater = gFloaterView->getParentFloater(this); + LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLIMFloaterContainer::onAvatarPicked, this, _1), TRUE, TRUE, TRUE, root_floater->getName(), button); + if (picker && root_floater) { root_floater->addDependentFloater(picker); diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 03dfada77c..2a84616ddf 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -147,7 +147,7 @@ LLInventoryPanel::LLInventoryPanel(const LLInventoryPanel::Params& p) : mCommitCallbackRegistrar.add("Inventory.DoCreate", boost::bind(&LLInventoryPanel::doCreate, this, _2)); mCommitCallbackRegistrar.add("Inventory.AttachObject", boost::bind(&LLInventoryPanel::attachObject, this, _2)); mCommitCallbackRegistrar.add("Inventory.BeginIMSession", boost::bind(&LLInventoryPanel::beginIMSession, this)); - mCommitCallbackRegistrar.add("Inventory.Share", boost::bind(&LLAvatarActions::shareWithAvatars)); + mCommitCallbackRegistrar.add("Inventory.Share", boost::bind(&LLAvatarActions::shareWithAvatars, this)); } diff --git a/indra/newview/llpanelblockedlist.cpp b/indra/newview/llpanelblockedlist.cpp index 35cda14f8d..8d03930699 100644 --- a/indra/newview/llpanelblockedlist.cpp +++ b/indra/newview/llpanelblockedlist.cpp @@ -66,10 +66,19 @@ LLPanelBlockedList::LLPanelBlockedList() mEnableCallbackRegistrar.add("Block.Check", boost::bind(&LLPanelBlockedList::isActionChecked, this, _2)); } +void LLPanelBlockedList::removePicker() +{ + if(mPicker.get()) + { + mPicker.get()->closeFloater(); + } +} + BOOL LLPanelBlockedList::postBuild() { mBlockedList = getChild("blocked"); mBlockedList->setCommitOnSelectionChange(TRUE); + this->setVisibleCallback(boost::bind(&LLPanelBlockedList::removePicker, this)); switch (gSavedSettings.getU32("BlockPeopleSortOrder")) { @@ -185,11 +194,18 @@ void LLPanelBlockedList::blockResidentByName() { const BOOL allow_multiple = FALSE; const BOOL close_on_select = TRUE; - /*LLFloaterAvatarPicker* picker = */LLFloaterAvatarPicker::show(boost::bind(&LLPanelBlockedList::callbackBlockPicked, this, _1, _2), allow_multiple, close_on_select); - - // *TODO: mantipov: should LLFloaterAvatarPicker be closed when panel is closed? - // old Floater dependency is not enable in panel - // addDependentFloater(picker); + + LLView * button = getChildView("plus_btn", TRUE); + LLFloater* root_floater = gFloaterView->getParentFloater(this); + LLFloaterAvatarPicker * picker = LLFloaterAvatarPicker::show(boost::bind(&LLPanelBlockedList::callbackBlockPicked, this, _1, _2), + allow_multiple, close_on_select, FALSE, root_floater->getName(), button); + + if (root_floater) + { + root_floater->addDependentFloater(picker); + } + + mPicker = picker->getHandle(); } void LLPanelBlockedList::blockObjectByName() diff --git a/indra/newview/llpanelblockedlist.h b/indra/newview/llpanelblockedlist.h index 332349dfc0..07f0437656 100644 --- a/indra/newview/llpanelblockedlist.h +++ b/indra/newview/llpanelblockedlist.h @@ -61,6 +61,7 @@ private: E_SORT_BY_TYPE = 1, } ESortOrder; + void removePicker(); void updateButtons(); // UI callbacks @@ -78,6 +79,7 @@ private: private: LLBlockList* mBlockedList; + LLHandle mPicker; }; //----------------------------------------------------------------------------- diff --git a/indra/newview/llpanelgroupinvite.cpp b/indra/newview/llpanelgroupinvite.cpp index 00dd206571..290e38ee1f 100644 --- a/indra/newview/llpanelgroupinvite.cpp +++ b/indra/newview/llpanelgroupinvite.cpp @@ -301,11 +301,13 @@ void LLPanelGroupInvite::impl::callbackClickAdd(void* userdata) //Soon the avatar picker will be embedded into this panel //instead of being it's own separate floater. But that is next week. //This will do for now. -jwolk May 10, 2006 + LLView * button = panelp->getChildView("add_button"); + LLFloater * root_floater = gFloaterView->getParentFloater(panelp); LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show( - boost::bind(impl::callbackAddUsers, _1, panelp->mImplementation), TRUE); + boost::bind(impl::callbackAddUsers, _1, panelp->mImplementation), TRUE, FALSE, FALSE, root_floater->getName(), button); if (picker) { - gFloaterView->getParentFloater(panelp)->addDependentFloater(picker); + root_floater->addDependentFloater(picker); } } } diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index eb3877da5a..35cb3d59c5 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -118,7 +118,7 @@ LLPanelMainInventory::LLPanelMainInventory(const LLPanel::Params& p) mCommitCallbackRegistrar.add("Inventory.ShowFilters", boost::bind(&LLPanelMainInventory::toggleFindOptions, this)); mCommitCallbackRegistrar.add("Inventory.ResetFilters", boost::bind(&LLPanelMainInventory::resetFilters, this)); mCommitCallbackRegistrar.add("Inventory.SetSortBy", boost::bind(&LLPanelMainInventory::setSortBy, this, _2)); - mCommitCallbackRegistrar.add("Inventory.Share", boost::bind(&LLAvatarActions::shareWithAvatars)); + mCommitCallbackRegistrar.add("Inventory.Share", boost::bind(&LLAvatarActions::shareWithAvatars, this)); mSavedFolderState = new LLSaveFolderState(); mSavedFolderState->setApply(FALSE); diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 82956beb3d..de12826452 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1498,7 +1498,7 @@ LLPanelObjectInventory::LLPanelObjectInventory(const LLPanelObjectInventory::Par mCommitCallbackRegistrar.add("Inventory.DoCreate", boost::bind(&do_nothing)); mCommitCallbackRegistrar.add("Inventory.AttachObject", boost::bind(&do_nothing)); mCommitCallbackRegistrar.add("Inventory.BeginIMSession", boost::bind(&do_nothing)); - mCommitCallbackRegistrar.add("Inventory.Share", boost::bind(&LLAvatarActions::shareWithAvatars)); + mCommitCallbackRegistrar.add("Inventory.Share", boost::bind(&LLAvatarActions::shareWithAvatars, this)); } // Destroys the object diff --git a/indra/newview/llpanelpeople.cpp b/indra/newview/llpanelpeople.cpp index 260de40eef..14045df42e 100644 --- a/indra/newview/llpanelpeople.cpp +++ b/indra/newview/llpanelpeople.cpp @@ -556,6 +556,15 @@ void LLPanelPeople::onFriendsAccordionExpandedCollapsed(LLUICtrl* ctrl, const LL } } + +void LLPanelPeople::removePicker() +{ + if(mPicker.get()) + { + mPicker.get()->closeFloater(); + } +} + BOOL LLPanelPeople::postBuild() { getChild("nearby_filter_input")->setCommitCallback(boost::bind(&LLPanelPeople::onFilterEdit, this, _2)); @@ -571,6 +580,7 @@ BOOL LLPanelPeople::postBuild() LLPanel* friends_tab = getChild(FRIENDS_TAB_NAME); // updater is active only if panel is visible to user. friends_tab->setVisibleCallback(boost::bind(&Updater::setActive, mFriendListUpdater, _2)); + friends_tab->setVisibleCallback(boost::bind(&LLPanelPeople::removePicker, this)); mOnlineFriendList = friends_tab->getChild("avatars_online"); mAllFriendList = friends_tab->getChild("avatars_all"); mOnlineFriendList->setNoItemsCommentText(getString("no_friends_online")); @@ -1079,8 +1089,12 @@ bool LLPanelPeople::isItemsFreeOfFriends(const uuid_vec_t& uuids) void LLPanelPeople::onAddFriendWizButtonClicked() { + LLPanel* cur_panel = mTabContainer->getCurrentPanel(); + LLView * button = cur_panel->getChildView("friends_add_btn", TRUE); + // Show add friend wizard. - LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLPanelPeople::onAvatarPicked, _1, _2), FALSE, TRUE); + LLFloater* root_floater = gFloaterView->getParentFloater(this); + LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLPanelPeople::onAvatarPicked, _1, _2), FALSE, TRUE, FALSE, root_floater->getName(), button); if (!picker) { return; @@ -1088,11 +1102,13 @@ void LLPanelPeople::onAddFriendWizButtonClicked() // Need to disable 'ok' button when friend occurs in selection picker->setOkBtnEnableCb(boost::bind(&LLPanelPeople::isItemsFreeOfFriends, this, _1)); - LLFloater* root_floater = gFloaterView->getParentFloater(this); + if (root_floater) { root_floater->addDependentFloater(picker); } + + mPicker = picker->getHandle(); } void LLPanelPeople::onDeleteFriendButtonClicked() diff --git a/indra/newview/llpanelpeople.h b/indra/newview/llpanelpeople.h index da27f83074..4740964dee 100644 --- a/indra/newview/llpanelpeople.h +++ b/indra/newview/llpanelpeople.h @@ -68,6 +68,8 @@ private: E_SORT_BY_RECENT_SPEAKERS = 4, } ESortOrder; + void removePicker(); + // methods indirectly called by the updaters void updateFriendListHelpText(); void updateFriendList(); @@ -139,6 +141,7 @@ private: Updater* mNearbyListUpdater; Updater* mRecentListUpdater; Updater* mButtonsUpdater; + LLHandle< LLFloater > mPicker; }; #endif //LL_LLPANELPEOPLE_H diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp index acb232c77f..8915bb2fef 100644 --- a/indra/newview/llsidepanelinventory.cpp +++ b/indra/newview/llsidepanelinventory.cpp @@ -448,7 +448,7 @@ void LLSidepanelInventory::onInfoButtonClicked() void LLSidepanelInventory::onShareButtonClicked() { - LLAvatarActions::shareWithAvatars(); + LLAvatarActions::shareWithAvatars(this); } void LLSidepanelInventory::onShopButtonClicked() -- cgit v1.3 From cf7eb79fa7eadd6d76890d2a3f9da905de8f4691 Mon Sep 17 00:00:00 2001 From: Don Kjer Date: Sat, 8 Sep 2012 04:39:11 +0000 Subject: Removed most llappearance -> llui dependencies (LLTrans remains). Moved LLInventoryIcon::EIconName into LLInventoryType. Moved LLInventoryIcon back to newview. Moved LLUI gl_* functions into llrender. --- indra/appearance_utility/CMakeLists.txt | 3 + indra/appearance_utility/appearance_utility.cpp | 4 + indra/llappearance/CMakeLists.txt | 2 - indra/llappearance/llinventoryicon.cpp | 183 --- indra/llappearance/llinventoryicon.h | 102 -- indra/llappearance/lltexlayer.cpp | 2 +- indra/llappearance/lltexlayer.h | 2 +- indra/llappearance/lltexlayerparams.cpp | 2 +- indra/llappearance/llviewervisualparam.cpp | 1 - indra/llappearance/llwearabletype.cpp | 46 +- indra/llappearance/llwearabletype.h | 4 +- indra/llinventory/llinventorytype.h | 47 + indra/llrender/CMakeLists.txt | 4 + indra/llrender/llrender2dutils.cpp | 1621 +++++++++++++++++++++++ indra/llrender/llrender2dutils.h | 164 +++ indra/llrender/lluiimage.cpp | 199 +++ indra/llrender/lluiimage.h | 124 ++ indra/llui/CMakeLists.txt | 2 - indra/llui/llcombobox.cpp | 2 +- indra/llui/lllineeditor.cpp | 6 +- indra/llui/lllocalcliprect.cpp | 8 +- indra/llui/lltextbase.cpp | 4 +- indra/llui/lltexteditor.cpp | 2 +- indra/llui/llui.cpp | 1579 +--------------------- indra/llui/llui.h | 131 +- indra/llui/lluiimage.cpp | 199 --- indra/llui/lluiimage.h | 124 -- indra/llui/tests/llurlentry_test.cpp | 2 +- indra/llui/tests/llurlmatch_test.cpp | 2 +- indra/newview/CMakeLists.txt | 2 + indra/newview/llappviewer.cpp | 2 +- indra/newview/llfloaterbuycontents.cpp | 1 + indra/newview/llglsandbox.cpp | 8 +- indra/newview/llinventorybridge.cpp | 3 +- indra/newview/llinventoryicon.cpp | 183 +++ indra/newview/llinventoryicon.h | 56 + indra/newview/llinventorylistitem.cpp | 1 + indra/newview/llmediactrl.cpp | 18 +- indra/newview/llpanelgroupnotices.cpp | 1 + indra/newview/llpanelobjectinventory.cpp | 1 + indra/newview/lltoastgroupnotifypanel.cpp | 1 + indra/newview/llviewerdisplay.cpp | 10 +- indra/newview/llviewerwindow.cpp | 12 +- indra/newview/llwearableitemslist.cpp | 1 + indra/newview/llworldmapview.cpp | 2 +- 45 files changed, 2510 insertions(+), 2363 deletions(-) delete mode 100644 indra/llappearance/llinventoryicon.cpp delete mode 100644 indra/llappearance/llinventoryicon.h create mode 100644 indra/llrender/llrender2dutils.cpp create mode 100644 indra/llrender/llrender2dutils.h create mode 100644 indra/llrender/lluiimage.cpp create mode 100644 indra/llrender/lluiimage.h delete mode 100644 indra/llui/lluiimage.cpp delete mode 100644 indra/llui/lluiimage.h create mode 100644 indra/newview/llinventoryicon.cpp create mode 100644 indra/newview/llinventoryicon.h (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/appearance_utility/CMakeLists.txt b/indra/appearance_utility/CMakeLists.txt index c38f811b44..d860dae4df 100644 --- a/indra/appearance_utility/CMakeLists.txt +++ b/indra/appearance_utility/CMakeLists.txt @@ -9,6 +9,7 @@ include(OpenSSL) include(UI) include(LLAppearance) include(LLCommon) +include(LLInventory) include(LLVFS) include(LLXML) include(LLUI) @@ -19,6 +20,7 @@ include_directories( ${LLVFS_INCLUDE_DIRS} ${LLXML_INCLUDE_DIRS} ${LLUI_INCLUDE_DIRS} + ${LLINVENTORY_INCLUDE_DIRS} ${CURL_INCLUDE_DIRS} ${CARES_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIRS} @@ -44,6 +46,7 @@ target_link_libraries(appearance-utility-bin ${CRYPTO_LIBRARIES} ${UI_LIBRARIES} ${LLAPPEARANCE_LIBRARIES} + ${LLINVENTORY_LIBRARIES} ${LLXML_LIBRARIES} ${LLUI_LIBRARIES} ${LLVFS_LIBRARIES} diff --git a/indra/appearance_utility/appearance_utility.cpp b/indra/appearance_utility/appearance_utility.cpp index 130bca84a8..c7f8703e28 100644 --- a/indra/appearance_utility/appearance_utility.cpp +++ b/indra/appearance_utility/appearance_utility.cpp @@ -38,6 +38,8 @@ #include "llsdserialize.h" #include "llsdutil.h" +//#include "llwearabledata.h" + enum EResult { RV_SUCCESS = 0, @@ -150,6 +152,8 @@ EResult process_tbd(LLSD& input, std::ostream& output, LLSD& error_llsd) { EResult rv = RV_SUCCESS; + //LLWearableData wearable_data; + LLSD result; result["success"] = true; result["input"] = input; diff --git a/indra/llappearance/CMakeLists.txt b/indra/llappearance/CMakeLists.txt index 41da898457..717efb2f8b 100644 --- a/indra/llappearance/CMakeLists.txt +++ b/indra/llappearance/CMakeLists.txt @@ -43,7 +43,6 @@ include_directories( set(llappearance_SOURCE_FILES llavatarappearance.cpp lldriverparam.cpp - llinventoryicon.cpp lllocaltextureobject.cpp lltexglobalcolor.cpp lltexlayer.cpp @@ -61,7 +60,6 @@ set(llappearance_HEADER_FILES llavatarappearance.h lldriverparam.h - llinventoryicon.h lljointpickname.h lllocaltextureobject.h lltexglobalcolor.h diff --git a/indra/llappearance/llinventoryicon.cpp b/indra/llappearance/llinventoryicon.cpp deleted file mode 100644 index 371f60353b..0000000000 --- a/indra/llappearance/llinventoryicon.cpp +++ /dev/null @@ -1,183 +0,0 @@ -/** - * @file llinventoryicon.cpp - * @brief Implementation of the inventory icon. - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#include "linden_common.h" -#include "llinventoryicon.h" - -#include "lldictionary.h" -#include "llinventorydefines.h" -#include "llui.h" -#include "llwearabletype.h" - -struct IconEntry : public LLDictionaryEntry -{ - IconEntry(const std::string &item_name) - : - LLDictionaryEntry(item_name) - {} -}; - -class LLIconDictionary : public LLSingleton, - public LLDictionary -{ -public: - LLIconDictionary(); -}; - -LLIconDictionary::LLIconDictionary() -{ - addEntry(LLInventoryIcon::ICONNAME_TEXTURE, new IconEntry("Inv_Texture")); - addEntry(LLInventoryIcon::ICONNAME_SOUND, new IconEntry("Inv_Sound")); - addEntry(LLInventoryIcon::ICONNAME_CALLINGCARD_ONLINE, new IconEntry("Inv_CallingCard")); - addEntry(LLInventoryIcon::ICONNAME_CALLINGCARD_OFFLINE, new IconEntry("Inv_CallingCard")); - addEntry(LLInventoryIcon::ICONNAME_LANDMARK, new IconEntry("Inv_Landmark")); - addEntry(LLInventoryIcon::ICONNAME_LANDMARK_VISITED, new IconEntry("Inv_Landmark")); - addEntry(LLInventoryIcon::ICONNAME_SCRIPT, new IconEntry("Inv_Script")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING, new IconEntry("Inv_Clothing")); - addEntry(LLInventoryIcon::ICONNAME_OBJECT, new IconEntry("Inv_Object")); - addEntry(LLInventoryIcon::ICONNAME_OBJECT_MULTI, new IconEntry("Inv_Object_Multi")); - addEntry(LLInventoryIcon::ICONNAME_NOTECARD, new IconEntry("Inv_Notecard")); - addEntry(LLInventoryIcon::ICONNAME_BODYPART, new IconEntry("Inv_Skin")); - addEntry(LLInventoryIcon::ICONNAME_SNAPSHOT, new IconEntry("Inv_Snapshot")); - - addEntry(LLInventoryIcon::ICONNAME_BODYPART_SHAPE, new IconEntry("Inv_BodyShape")); - addEntry(LLInventoryIcon::ICONNAME_BODYPART_SKIN, new IconEntry("Inv_Skin")); - addEntry(LLInventoryIcon::ICONNAME_BODYPART_HAIR, new IconEntry("Inv_Hair")); - addEntry(LLInventoryIcon::ICONNAME_BODYPART_EYES, new IconEntry("Inv_Eye")); - - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_SHIRT, new IconEntry("Inv_Shirt")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_PANTS, new IconEntry("Inv_Pants")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_SHOES, new IconEntry("Inv_Shoe")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_SOCKS, new IconEntry("Inv_Socks")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_JACKET, new IconEntry("Inv_Jacket")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_GLOVES, new IconEntry("Inv_Gloves")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_UNDERSHIRT, new IconEntry("Inv_Undershirt")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_UNDERPANTS, new IconEntry("Inv_Underpants")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_SKIRT, new IconEntry("Inv_Skirt")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_ALPHA, new IconEntry("Inv_Alpha")); - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_TATTOO, new IconEntry("Inv_Tattoo")); - addEntry(LLInventoryIcon::ICONNAME_ANIMATION, new IconEntry("Inv_Animation")); - addEntry(LLInventoryIcon::ICONNAME_GESTURE, new IconEntry("Inv_Gesture")); - - addEntry(LLInventoryIcon::ICONNAME_CLOTHING_PHYSICS, new IconEntry("Inv_Physics")); - - addEntry(LLInventoryIcon::ICONNAME_LINKITEM, new IconEntry("Inv_LinkItem")); - addEntry(LLInventoryIcon::ICONNAME_LINKFOLDER, new IconEntry("Inv_LinkFolder")); - addEntry(LLInventoryIcon::ICONNAME_MESH, new IconEntry("Inv_Mesh")); - - addEntry(LLInventoryIcon::ICONNAME_INVALID, new IconEntry("Inv_Invalid")); - - addEntry(LLInventoryIcon::ICONNAME_NONE, new IconEntry("NONE")); -} - -LLUIImagePtr LLInventoryIcon::getIcon(LLAssetType::EType asset_type, - LLInventoryType::EType inventory_type, - U32 misc_flag, - BOOL item_is_multi) -{ - const std::string& icon_name = getIconName(asset_type, inventory_type, misc_flag, item_is_multi); - return LLUI::getUIImage(icon_name); -} - -LLUIImagePtr LLInventoryIcon::getIcon(EIconName idx) -{ - return LLUI::getUIImage(getIconName(idx)); -} - -const std::string& LLInventoryIcon::getIconName(LLAssetType::EType asset_type, - LLInventoryType::EType inventory_type, - U32 misc_flag, - BOOL item_is_multi) -{ - EIconName idx = ICONNAME_OBJECT; - if (item_is_multi) - { - idx = ICONNAME_OBJECT_MULTI; - return getIconName(idx); - } - - switch(asset_type) - { - case LLAssetType::AT_TEXTURE: - idx = (inventory_type == LLInventoryType::IT_SNAPSHOT) ? ICONNAME_SNAPSHOT : ICONNAME_TEXTURE; - break; - case LLAssetType::AT_SOUND: - idx = ICONNAME_SOUND; - break; - case LLAssetType::AT_CALLINGCARD: - idx = (misc_flag != 0) ? ICONNAME_CALLINGCARD_ONLINE : ICONNAME_CALLINGCARD_OFFLINE; - break; - case LLAssetType::AT_LANDMARK: - idx = (misc_flag != 0) ? ICONNAME_LANDMARK_VISITED : ICONNAME_LANDMARK; - break; - case LLAssetType::AT_SCRIPT: - case LLAssetType::AT_LSL_TEXT: - case LLAssetType::AT_LSL_BYTECODE: - idx = ICONNAME_SCRIPT; - break; - case LLAssetType::AT_CLOTHING: - case LLAssetType::AT_BODYPART: - idx = assignWearableIcon(misc_flag); - break; - case LLAssetType::AT_NOTECARD: - idx = ICONNAME_NOTECARD; - break; - case LLAssetType::AT_ANIMATION: - idx = ICONNAME_ANIMATION; - break; - case LLAssetType::AT_GESTURE: - idx = ICONNAME_GESTURE; - break; - case LLAssetType::AT_LINK: - idx = ICONNAME_LINKITEM; - break; - case LLAssetType::AT_LINK_FOLDER: - idx = ICONNAME_LINKFOLDER; - break; - case LLAssetType::AT_OBJECT: - idx = ICONNAME_OBJECT; - break; - case LLAssetType::AT_MESH: - idx = ICONNAME_MESH; - default: - break; - } - - return getIconName(idx); -} - - -const std::string& LLInventoryIcon::getIconName(EIconName idx) -{ - const IconEntry *entry = LLIconDictionary::instance().lookup(idx); - return entry->mName; -} - -LLInventoryIcon::EIconName LLInventoryIcon::assignWearableIcon(U32 misc_flag) -{ - const LLWearableType::EType wearable_type = LLWearableType::EType(LLInventoryItemFlags::II_FLAGS_WEARABLES_MASK & misc_flag); - return LLWearableType::getIconName(wearable_type); -} diff --git a/indra/llappearance/llinventoryicon.h b/indra/llappearance/llinventoryicon.h deleted file mode 100644 index c7e2998a20..0000000000 --- a/indra/llappearance/llinventoryicon.h +++ /dev/null @@ -1,102 +0,0 @@ -/** - * @file llinventoryfunctions.h - * @brief Miscellaneous inventory-related functions and classes - * class definition - * - * $LicenseInfo:firstyear=2001&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#ifndef LL_LLINVENTORYICON_H -#define LL_LLINVENTORYICON_H - -#include "llassettype.h" -#include "llinventorytype.h" -#include "lluiimage.h" - -class LLInventoryIcon -{ -public: - enum EIconName - { - ICONNAME_TEXTURE, - ICONNAME_SOUND, - ICONNAME_CALLINGCARD_ONLINE, - ICONNAME_CALLINGCARD_OFFLINE, - ICONNAME_LANDMARK, - ICONNAME_LANDMARK_VISITED, - ICONNAME_SCRIPT, - ICONNAME_CLOTHING, - ICONNAME_OBJECT, - ICONNAME_OBJECT_MULTI, - ICONNAME_NOTECARD, - ICONNAME_BODYPART, - ICONNAME_SNAPSHOT, - - ICONNAME_BODYPART_SHAPE, - ICONNAME_BODYPART_SKIN, - ICONNAME_BODYPART_HAIR, - ICONNAME_BODYPART_EYES, - ICONNAME_CLOTHING_SHIRT, - ICONNAME_CLOTHING_PANTS, - ICONNAME_CLOTHING_SHOES, - ICONNAME_CLOTHING_SOCKS, - ICONNAME_CLOTHING_JACKET, - ICONNAME_CLOTHING_GLOVES, - ICONNAME_CLOTHING_UNDERSHIRT, - ICONNAME_CLOTHING_UNDERPANTS, - ICONNAME_CLOTHING_SKIRT, - ICONNAME_CLOTHING_ALPHA, - ICONNAME_CLOTHING_TATTOO, - - ICONNAME_ANIMATION, - ICONNAME_GESTURE, - - ICONNAME_CLOTHING_PHYSICS, - - ICONNAME_LINKITEM, - ICONNAME_LINKFOLDER, - ICONNAME_MESH, - - ICONNAME_INVALID, - ICONNAME_COUNT, - ICONNAME_NONE = -1 - }; - - static const std::string& getIconName(LLAssetType::EType asset_type, - LLInventoryType::EType inventory_type = LLInventoryType::IT_NONE, - U32 misc_flag = 0, // different meanings depending on item type - BOOL item_is_multi = FALSE); - static const std::string& getIconName(EIconName idx); - - static LLUIImagePtr getIcon(LLAssetType::EType asset_type, - LLInventoryType::EType inventory_type = LLInventoryType::IT_NONE, - U32 misc_flag = 0, // different meanings depending on item type - BOOL item_is_multi = FALSE); - static LLUIImagePtr getIcon(EIconName idx); - -protected: - static EIconName assignWearableIcon(U32 misc_flag); -}; -#endif // LL_LLINVENTORYICON_H - - - diff --git a/indra/llappearance/lltexlayer.cpp b/indra/llappearance/lltexlayer.cpp index 9b70f737a0..1325267dc2 100644 --- a/indra/llappearance/lltexlayer.cpp +++ b/indra/llappearance/lltexlayer.cpp @@ -38,7 +38,7 @@ #include "llvfs.h" #include "lltexlayerparams.h" #include "lltexturemanagerbridge.h" -#include "llui.h" +#include "llrender2dutils.h" #include "llwearable.h" #include "llwearabledata.h" #include "llvertexbuffer.h" diff --git a/indra/llappearance/lltexlayer.h b/indra/llappearance/lltexlayer.h index e6c2ece64a..0d7fad349c 100644 --- a/indra/llappearance/lltexlayer.h +++ b/indra/llappearance/lltexlayer.h @@ -28,8 +28,8 @@ #define LL_LLTEXLAYER_H #include +#include "llglslshader.h" #include "llgltexture.h" -//#include "llframetimer.h" #include "llavatarappearancedefines.h" #include "lltexlayerparams.h" diff --git a/indra/llappearance/lltexlayerparams.cpp b/indra/llappearance/lltexlayerparams.cpp index 06001c6b15..82c92b5a5e 100644 --- a/indra/llappearance/lltexlayerparams.cpp +++ b/indra/llappearance/lltexlayerparams.cpp @@ -33,8 +33,8 @@ #include "llquantize.h" #include "lltexlayer.h" #include "lltexturemanagerbridge.h" +#include "llrender2dutils.h" #include "llwearable.h" -#include "llui.h" //----------------------------------------------------------------------------- // LLTexLayerParam diff --git a/indra/llappearance/llviewervisualparam.cpp b/indra/llappearance/llviewervisualparam.cpp index a6792d0974..cc81bcf118 100644 --- a/indra/llappearance/llviewervisualparam.cpp +++ b/indra/llappearance/llviewervisualparam.cpp @@ -31,7 +31,6 @@ #include "llviewervisualparam.h" #include "llxmltree.h" -#include "llui.h" #include "llwearable.h" //----------------------------------------------------------------------------- diff --git a/indra/llappearance/llwearabletype.cpp b/indra/llappearance/llwearabletype.cpp index c72a0965fe..3a8e1b8be3 100644 --- a/indra/llappearance/llwearabletype.cpp +++ b/indra/llappearance/llwearabletype.cpp @@ -26,15 +26,15 @@ #include "linden_common.h" #include "llwearabletype.h" -#include "llinventoryicon.h" -#include "lltrans.h" +#include "llinventorytype.h" +#include "llui/lltrans.h" struct WearableEntry : public LLDictionaryEntry { WearableEntry(const std::string &name, const std::string& default_new_name, LLAssetType::EType assetType, - LLInventoryIcon::EIconName iconName, + LLInventoryType::EIconName iconName, BOOL disable_camera_switch = FALSE, BOOL allow_multiwear = TRUE) : LLDictionaryEntry(name), @@ -50,7 +50,7 @@ struct WearableEntry : public LLDictionaryEntry const LLAssetType::EType mAssetType; const std::string mLabel; const std::string mDefaultNewName; //keep mLabel for backward compatibility - LLInventoryIcon::EIconName mIconName; + LLInventoryType::EIconName mIconName; BOOL mDisableCameraSwitch; BOOL mAllowMultiwear; }; @@ -64,26 +64,26 @@ public: LLWearableDictionary::LLWearableDictionary() { - addEntry(LLWearableType::WT_SHAPE, new WearableEntry("shape", "New Shape", LLAssetType::AT_BODYPART, LLInventoryIcon::ICONNAME_BODYPART_SHAPE, FALSE, FALSE)); - addEntry(LLWearableType::WT_SKIN, new WearableEntry("skin", "New Skin", LLAssetType::AT_BODYPART, LLInventoryIcon::ICONNAME_BODYPART_SKIN, FALSE, FALSE)); - addEntry(LLWearableType::WT_HAIR, new WearableEntry("hair", "New Hair", LLAssetType::AT_BODYPART, LLInventoryIcon::ICONNAME_BODYPART_HAIR, FALSE, FALSE)); - addEntry(LLWearableType::WT_EYES, new WearableEntry("eyes", "New Eyes", LLAssetType::AT_BODYPART, LLInventoryIcon::ICONNAME_BODYPART_EYES, FALSE, FALSE)); - addEntry(LLWearableType::WT_SHIRT, new WearableEntry("shirt", "New Shirt", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_SHIRT, FALSE, TRUE)); - addEntry(LLWearableType::WT_PANTS, new WearableEntry("pants", "New Pants", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_PANTS, FALSE, TRUE)); - addEntry(LLWearableType::WT_SHOES, new WearableEntry("shoes", "New Shoes", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_SHOES, FALSE, TRUE)); - addEntry(LLWearableType::WT_SOCKS, new WearableEntry("socks", "New Socks", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_SOCKS, FALSE, TRUE)); - addEntry(LLWearableType::WT_JACKET, new WearableEntry("jacket", "New Jacket", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_JACKET, FALSE, TRUE)); - addEntry(LLWearableType::WT_GLOVES, new WearableEntry("gloves", "New Gloves", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_GLOVES, FALSE, TRUE)); - addEntry(LLWearableType::WT_UNDERSHIRT, new WearableEntry("undershirt", "New Undershirt", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_UNDERSHIRT, FALSE, TRUE)); - addEntry(LLWearableType::WT_UNDERPANTS, new WearableEntry("underpants", "New Underpants", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_UNDERPANTS, FALSE, TRUE)); - addEntry(LLWearableType::WT_SKIRT, new WearableEntry("skirt", "New Skirt", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_SKIRT, FALSE, TRUE)); - addEntry(LLWearableType::WT_ALPHA, new WearableEntry("alpha", "New Alpha", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_ALPHA, FALSE, TRUE)); - addEntry(LLWearableType::WT_TATTOO, new WearableEntry("tattoo", "New Tattoo", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_TATTOO, FALSE, TRUE)); + addEntry(LLWearableType::WT_SHAPE, new WearableEntry("shape", "New Shape", LLAssetType::AT_BODYPART, LLInventoryType::ICONNAME_BODYPART_SHAPE, FALSE, FALSE)); + addEntry(LLWearableType::WT_SKIN, new WearableEntry("skin", "New Skin", LLAssetType::AT_BODYPART, LLInventoryType::ICONNAME_BODYPART_SKIN, FALSE, FALSE)); + addEntry(LLWearableType::WT_HAIR, new WearableEntry("hair", "New Hair", LLAssetType::AT_BODYPART, LLInventoryType::ICONNAME_BODYPART_HAIR, FALSE, FALSE)); + addEntry(LLWearableType::WT_EYES, new WearableEntry("eyes", "New Eyes", LLAssetType::AT_BODYPART, LLInventoryType::ICONNAME_BODYPART_EYES, FALSE, FALSE)); + addEntry(LLWearableType::WT_SHIRT, new WearableEntry("shirt", "New Shirt", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_SHIRT, FALSE, TRUE)); + addEntry(LLWearableType::WT_PANTS, new WearableEntry("pants", "New Pants", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_PANTS, FALSE, TRUE)); + addEntry(LLWearableType::WT_SHOES, new WearableEntry("shoes", "New Shoes", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_SHOES, FALSE, TRUE)); + addEntry(LLWearableType::WT_SOCKS, new WearableEntry("socks", "New Socks", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_SOCKS, FALSE, TRUE)); + addEntry(LLWearableType::WT_JACKET, new WearableEntry("jacket", "New Jacket", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_JACKET, FALSE, TRUE)); + addEntry(LLWearableType::WT_GLOVES, new WearableEntry("gloves", "New Gloves", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_GLOVES, FALSE, TRUE)); + addEntry(LLWearableType::WT_UNDERSHIRT, new WearableEntry("undershirt", "New Undershirt", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_UNDERSHIRT, FALSE, TRUE)); + addEntry(LLWearableType::WT_UNDERPANTS, new WearableEntry("underpants", "New Underpants", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_UNDERPANTS, FALSE, TRUE)); + addEntry(LLWearableType::WT_SKIRT, new WearableEntry("skirt", "New Skirt", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_SKIRT, FALSE, TRUE)); + addEntry(LLWearableType::WT_ALPHA, new WearableEntry("alpha", "New Alpha", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_ALPHA, FALSE, TRUE)); + addEntry(LLWearableType::WT_TATTOO, new WearableEntry("tattoo", "New Tattoo", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_TATTOO, FALSE, TRUE)); - addEntry(LLWearableType::WT_PHYSICS, new WearableEntry("physics", "New Physics", LLAssetType::AT_CLOTHING, LLInventoryIcon::ICONNAME_CLOTHING_PHYSICS, TRUE, TRUE)); + addEntry(LLWearableType::WT_PHYSICS, new WearableEntry("physics", "New Physics", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_PHYSICS, TRUE, TRUE)); - addEntry(LLWearableType::WT_INVALID, new WearableEntry("invalid", "Invalid Wearable", LLAssetType::AT_NONE, LLInventoryIcon::ICONNAME_NONE, FALSE, FALSE)); - addEntry(LLWearableType::WT_NONE, new WearableEntry("none", "Invalid Wearable", LLAssetType::AT_NONE, LLInventoryIcon::ICONNAME_NONE, FALSE, FALSE)); + addEntry(LLWearableType::WT_INVALID, new WearableEntry("invalid", "Invalid Wearable", LLAssetType::AT_NONE, LLInventoryType::ICONNAME_NONE, FALSE, FALSE)); + addEntry(LLWearableType::WT_NONE, new WearableEntry("none", "Invalid Wearable", LLAssetType::AT_NONE, LLInventoryType::ICONNAME_NONE, FALSE, FALSE)); } // static @@ -131,7 +131,7 @@ LLAssetType::EType LLWearableType::getAssetType(LLWearableType::EType type) } // static -LLInventoryIcon::EIconName LLWearableType::getIconName(LLWearableType::EType type) +LLInventoryType::EIconName LLWearableType::getIconName(LLWearableType::EType type) { const LLWearableDictionary *dict = LLWearableDictionary::getInstance(); const WearableEntry *entry = dict->lookup(type); diff --git a/indra/llappearance/llwearabletype.h b/indra/llappearance/llwearabletype.h index d633b4807e..78008c27ea 100644 --- a/indra/llappearance/llwearabletype.h +++ b/indra/llappearance/llwearabletype.h @@ -29,7 +29,7 @@ #include "llassettype.h" #include "lldictionary.h" -#include "llinventoryicon.h" +#include "llinventorytype.h" #include "llsingleton.h" class LLWearableType @@ -64,7 +64,7 @@ public: static const std::string& getTypeLabel(EType type); static LLAssetType::EType getAssetType(EType type); static EType typeNameToType(const std::string& type_name); - static LLInventoryIcon::EIconName getIconName(EType type); + static LLInventoryType::EIconName getIconName(EType type); static BOOL getDisableCameraSwitch(EType type); static BOOL getAllowMultiwear(EType type); diff --git a/indra/llinventory/llinventorytype.h b/indra/llinventory/llinventorytype.h index 4d1e0db040..078b773932 100644 --- a/indra/llinventory/llinventorytype.h +++ b/indra/llinventory/llinventorytype.h @@ -68,6 +68,53 @@ public: IT_NONE = -1 }; + enum EIconName + { + ICONNAME_TEXTURE, + ICONNAME_SOUND, + ICONNAME_CALLINGCARD_ONLINE, + ICONNAME_CALLINGCARD_OFFLINE, + ICONNAME_LANDMARK, + ICONNAME_LANDMARK_VISITED, + ICONNAME_SCRIPT, + ICONNAME_CLOTHING, + ICONNAME_OBJECT, + ICONNAME_OBJECT_MULTI, + ICONNAME_NOTECARD, + ICONNAME_BODYPART, + ICONNAME_SNAPSHOT, + + ICONNAME_BODYPART_SHAPE, + ICONNAME_BODYPART_SKIN, + ICONNAME_BODYPART_HAIR, + ICONNAME_BODYPART_EYES, + ICONNAME_CLOTHING_SHIRT, + ICONNAME_CLOTHING_PANTS, + ICONNAME_CLOTHING_SHOES, + ICONNAME_CLOTHING_SOCKS, + ICONNAME_CLOTHING_JACKET, + ICONNAME_CLOTHING_GLOVES, + ICONNAME_CLOTHING_UNDERSHIRT, + ICONNAME_CLOTHING_UNDERPANTS, + ICONNAME_CLOTHING_SKIRT, + ICONNAME_CLOTHING_ALPHA, + ICONNAME_CLOTHING_TATTOO, + + ICONNAME_ANIMATION, + ICONNAME_GESTURE, + + ICONNAME_CLOTHING_PHYSICS, + + ICONNAME_LINKITEM, + ICONNAME_LINKFOLDER, + ICONNAME_MESH, + + ICONNAME_INVALID, + ICONNAME_COUNT, + ICONNAME_NONE = -1 + }; + + // machine transation between type and strings static EType lookup(const std::string& name); static const std::string &lookup(EType type); diff --git a/indra/llrender/CMakeLists.txt b/indra/llrender/CMakeLists.txt index 4609401ccf..3418ce2dfa 100644 --- a/indra/llrender/CMakeLists.txt +++ b/indra/llrender/CMakeLists.txt @@ -37,10 +37,12 @@ set(llrender_SOURCE_FILES llgltexture.cpp llimagegl.cpp llpostprocess.cpp + llrender2dutils.cpp llrendernavprim.cpp llrendersphere.cpp llshadermgr.cpp lltexture.cpp + lluiimage.cpp llvertexbuffer.cpp ) @@ -62,10 +64,12 @@ set(llrender_HEADER_FILES llimagegl.h llpostprocess.h llrender.h + llrender2dutils.h llrendernavprim.h llrendersphere.h llshadermgr.h lltexture.h + lluiimage.h llvertexbuffer.h ) diff --git a/indra/llrender/llrender2dutils.cpp b/indra/llrender/llrender2dutils.cpp new file mode 100644 index 0000000000..b2679176be --- /dev/null +++ b/indra/llrender/llrender2dutils.cpp @@ -0,0 +1,1621 @@ +/** + * @file llrender2dutils.cpp + * @brief GL function implementations for immediate-mode gl drawing. + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#include "linden_common.h" + +// Linden library includes +#include "v2math.h" +#include "m3math.h" +#include "v4color.h" +#include "llfontgl.h" +#include "llrender.h" +#include "llrect.h" +#include "llgl.h" +#include "lltexture.h" + +// Project includes +#include "llrender2dutils.h" +#include "lluiimage.h" + + +// +// Globals +// +const LLColor4 UI_VERTEX_COLOR(1.f, 1.f, 1.f, 1.f); +/*static*/ LLVector2 LLRender2D::sGLScaleFactor(1.f, 1.f); +/*static*/ LLImageProviderInterface* LLRender2D::sImageProvider = NULL; + +// +// Functions +// + +BOOL ui_point_in_rect(S32 x, S32 y, S32 left, S32 top, S32 right, S32 bottom) +{ + if (x < left || right < x) return FALSE; + if (y < bottom || top < y) return FALSE; + return TRUE; +} + + +// Puts GL into 2D drawing mode by turning off lighting, setting to an +// orthographic projection, etc. +void gl_state_for_2d(S32 width, S32 height) +{ + stop_glerror(); + F32 window_width = (F32) width;//gViewerWindow->getWindowWidth(); + F32 window_height = (F32) height;//gViewerWindow->getWindowHeight(); + + gGL.matrixMode(LLRender::MM_PROJECTION); + gGL.loadIdentity(); + gGL.ortho(0.0f, llmax(window_width, 1.f), 0.0f, llmax(window_height,1.f), -1.0f, 1.0f); + gGL.matrixMode(LLRender::MM_MODELVIEW); + gGL.loadIdentity(); + stop_glerror(); +} + + +void gl_draw_x(const LLRect& rect, const LLColor4& color) +{ + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + gGL.color4fv( color.mV ); + + gGL.begin( LLRender::LINES ); + gGL.vertex2i( rect.mLeft, rect.mTop ); + gGL.vertex2i( rect.mRight, rect.mBottom ); + gGL.vertex2i( rect.mLeft, rect.mBottom ); + gGL.vertex2i( rect.mRight, rect.mTop ); + gGL.end(); +} + + +void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, S32 pixel_offset, BOOL filled) +{ + gGL.color4fv(color.mV); + gl_rect_2d_offset_local(left, top, right, bottom, pixel_offset, filled); +} + +void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, S32 pixel_offset, BOOL filled) +{ + gGL.pushUIMatrix(); + left += LLFontGL::sCurOrigin.mX; + right += LLFontGL::sCurOrigin.mX; + bottom += LLFontGL::sCurOrigin.mY; + top += LLFontGL::sCurOrigin.mY; + + gGL.loadUIIdentity(); + gl_rect_2d(llfloor((F32)left * LLRender2D::sGLScaleFactor.mV[VX]) - pixel_offset, + llfloor((F32)top * LLRender2D::sGLScaleFactor.mV[VY]) + pixel_offset, + llfloor((F32)right * LLRender2D::sGLScaleFactor.mV[VX]) + pixel_offset, + llfloor((F32)bottom * LLRender2D::sGLScaleFactor.mV[VY]) - pixel_offset, + filled); + gGL.popUIMatrix(); +} + + +void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, BOOL filled ) +{ + stop_glerror(); + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + // Counterclockwise quad will face the viewer + if( filled ) + { + gGL.begin( LLRender::QUADS ); + gGL.vertex2i(left, top); + gGL.vertex2i(left, bottom); + gGL.vertex2i(right, bottom); + gGL.vertex2i(right, top); + gGL.end(); + } + else + { + if( gGLManager.mATIOffsetVerticalLines ) + { + // Work around bug in ATI driver: vertical lines are offset by (-1,-1) + gGL.begin( LLRender::LINES ); + + // Verticals + gGL.vertex2i(left + 1, top); + gGL.vertex2i(left + 1, bottom); + + gGL.vertex2i(right, bottom); + gGL.vertex2i(right, top); + + // Horizontals + top--; + right--; + gGL.vertex2i(left, bottom); + gGL.vertex2i(right, bottom); + + gGL.vertex2i(left, top); + gGL.vertex2i(right, top); + gGL.end(); + } + else + { + top--; + right--; + gGL.begin( LLRender::LINE_STRIP ); + gGL.vertex2i(left, top); + gGL.vertex2i(left, bottom); + gGL.vertex2i(right, bottom); + gGL.vertex2i(right, top); + gGL.vertex2i(left, top); + gGL.end(); + } + } + stop_glerror(); +} + +void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, BOOL filled ) +{ + gGL.color4fv( color.mV ); + gl_rect_2d( left, top, right, bottom, filled ); +} + + +void gl_rect_2d( const LLRect& rect, const LLColor4& color, BOOL filled ) +{ + gGL.color4fv( color.mV ); + gl_rect_2d( rect.mLeft, rect.mTop, rect.mRight, rect.mBottom, filled ); +} + +// Given a rectangle on the screen, draws a drop shadow _outside_ +// the right and bottom edges of it. Along the right it has width "lines" +// and along the bottom it has height "lines". +void gl_drop_shadow(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &start_color, S32 lines) +{ + stop_glerror(); + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + // HACK: Overlap with the rectangle by a single pixel. + right--; + bottom++; + lines++; + + LLColor4 end_color = start_color; + end_color.mV[VALPHA] = 0.f; + + gGL.begin(LLRender::QUADS); + + // Right edge, CCW faces screen + gGL.color4fv(start_color.mV); + gGL.vertex2i(right, top-lines); + gGL.vertex2i(right, bottom); + gGL.color4fv(end_color.mV); + gGL.vertex2i(right+lines, bottom); + gGL.vertex2i(right+lines, top-lines); + + // Bottom edge, CCW faces screen + gGL.color4fv(start_color.mV); + gGL.vertex2i(right, bottom); + gGL.vertex2i(left+lines, bottom); + gGL.color4fv(end_color.mV); + gGL.vertex2i(left+lines, bottom-lines); + gGL.vertex2i(right, bottom-lines); + + // bottom left Corner + gGL.color4fv(start_color.mV); + gGL.vertex2i(left+lines, bottom); + gGL.color4fv(end_color.mV); + gGL.vertex2i(left, bottom); + // make the bottom left corner not sharp + gGL.vertex2i(left+1, bottom-lines+1); + gGL.vertex2i(left+lines, bottom-lines); + + // bottom right corner + gGL.color4fv(start_color.mV); + gGL.vertex2i(right, bottom); + gGL.color4fv(end_color.mV); + gGL.vertex2i(right, bottom-lines); + // make the rightmost corner not sharp + gGL.vertex2i(right+lines-1, bottom-lines+1); + gGL.vertex2i(right+lines, bottom); + + // top right corner + gGL.color4fv(start_color.mV); + gGL.vertex2i( right, top-lines ); + gGL.color4fv(end_color.mV); + gGL.vertex2i( right+lines, top-lines ); + // make the corner not sharp + gGL.vertex2i( right+lines-1, top-1 ); + gGL.vertex2i( right, top ); + + gGL.end(); + stop_glerror(); +} + +void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2 ) +{ + // Work around bug in ATI driver: vertical lines are offset by (-1,-1) + if( (x1 == x2) && gGLManager.mATIOffsetVerticalLines ) + { + x1++; + x2++; + y1++; + y2++; + } + + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + gGL.begin(LLRender::LINES); + gGL.vertex2i(x1, y1); + gGL.vertex2i(x2, y2); + gGL.end(); +} + +void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2, const LLColor4 &color ) +{ + // Work around bug in ATI driver: vertical lines are offset by (-1,-1) + if( (x1 == x2) && gGLManager.mATIOffsetVerticalLines ) + { + x1++; + x2++; + y1++; + y2++; + } + + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + gGL.color4fv( color.mV ); + + gGL.begin(LLRender::LINES); + gGL.vertex2i(x1, y1); + gGL.vertex2i(x2, y2); + gGL.end(); +} + +void gl_triangle_2d(S32 x1, S32 y1, S32 x2, S32 y2, S32 x3, S32 y3, const LLColor4& color, BOOL filled) +{ + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + gGL.color4fv(color.mV); + + if (filled) + { + gGL.begin(LLRender::TRIANGLES); + } + else + { + gGL.begin(LLRender::LINE_LOOP); + } + gGL.vertex2i(x1, y1); + gGL.vertex2i(x2, y2); + gGL.vertex2i(x3, y3); + gGL.end(); +} + +void gl_corners_2d(S32 left, S32 top, S32 right, S32 bottom, S32 length, F32 max_frac) +{ + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + length = llmin((S32)(max_frac*(right - left)), length); + length = llmin((S32)(max_frac*(top - bottom)), length); + gGL.begin(LLRender::LINES); + gGL.vertex2i(left, top); + gGL.vertex2i(left + length, top); + + gGL.vertex2i(left, top); + gGL.vertex2i(left, top - length); + + gGL.vertex2i(left, bottom); + gGL.vertex2i(left + length, bottom); + + gGL.vertex2i(left, bottom); + gGL.vertex2i(left, bottom + length); + + gGL.vertex2i(right, top); + gGL.vertex2i(right - length, top); + + gGL.vertex2i(right, top); + gGL.vertex2i(right, top - length); + + gGL.vertex2i(right, bottom); + gGL.vertex2i(right - length, bottom); + + gGL.vertex2i(right, bottom); + gGL.vertex2i(right, bottom + length); + gGL.end(); +} + + +void gl_draw_image( S32 x, S32 y, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect ) +{ + if (NULL == image) + { + llwarns << "image == NULL; aborting function" << llendl; + return; + } + gl_draw_scaled_rotated_image( x, y, image->getWidth(0), image->getHeight(0), 0.f, image, color, uv_rect ); +} + +void gl_draw_scaled_image(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect) +{ + if (NULL == image) + { + llwarns << "image == NULL; aborting function" << llendl; + return; + } + gl_draw_scaled_rotated_image( x, y, width, height, 0.f, image, color, uv_rect ); +} + +void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 border_width, S32 border_height, S32 width, S32 height, LLTexture* image, const LLColor4& color, BOOL solid_color, const LLRectf& uv_rect) +{ + if (NULL == image) + { + llwarns << "image == NULL; aborting function" << llendl; + return; + } + + // scale screen size of borders down + F32 border_width_fraction = (F32)border_width / (F32)image->getWidth(0); + F32 border_height_fraction = (F32)border_height / (F32)image->getHeight(0); + + LLRectf scale_rect(border_width_fraction, 1.f - border_height_fraction, 1.f - border_width_fraction, border_height_fraction); + gl_draw_scaled_image_with_border(x, y, width, height, image, color, solid_color, uv_rect, scale_rect); +} + +void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4& color, BOOL solid_color, const LLRectf& uv_outer_rect, const LLRectf& center_rect) +{ + stop_glerror(); + + if (NULL == image) + { + llwarns << "image == NULL; aborting function" << llendl; + return; + } + + // add in offset of current image to current UI translation + const LLVector3 ui_scale = gGL.getUIScale(); + const LLVector3 ui_translation = (gGL.getUITranslation() + LLVector3(x, y, 0.f)).scaledVec(ui_scale); + + F32 uv_width = uv_outer_rect.getWidth(); + F32 uv_height = uv_outer_rect.getHeight(); + + // shrink scaling region to be proportional to clipped image region + LLRectf uv_center_rect( + uv_outer_rect.mLeft + (center_rect.mLeft * uv_width), + uv_outer_rect.mBottom + (center_rect.mTop * uv_height), + uv_outer_rect.mLeft + (center_rect.mRight * uv_width), + uv_outer_rect.mBottom + (center_rect.mBottom * uv_height)); + + F32 image_width = image->getWidth(0); + F32 image_height = image->getHeight(0); + + S32 image_natural_width = llround(image_width * uv_width); + S32 image_natural_height = llround(image_height * uv_height); + + LLRectf draw_center_rect( uv_center_rect.mLeft * image_width, + uv_center_rect.mTop * image_height, + uv_center_rect.mRight * image_width, + uv_center_rect.mBottom * image_height); + + { // scale fixed region of image to drawn region + draw_center_rect.mRight += width - image_natural_width; + draw_center_rect.mTop += height - image_natural_height; + + F32 border_shrink_width = llmax(0.f, draw_center_rect.mLeft - draw_center_rect.mRight); + F32 border_shrink_height = llmax(0.f, draw_center_rect.mBottom - draw_center_rect.mTop); + + F32 shrink_width_ratio = center_rect.getWidth() == 1.f ? 0.f : border_shrink_width / ((F32)image_natural_width * (1.f - center_rect.getWidth())); + F32 shrink_height_ratio = center_rect.getHeight() == 1.f ? 0.f : border_shrink_height / ((F32)image_natural_height * (1.f - center_rect.getHeight())); + + F32 shrink_scale = 1.f - llmax(shrink_width_ratio, shrink_height_ratio); + + draw_center_rect.mLeft = llround(ui_translation.mV[VX] + (F32)draw_center_rect.mLeft * shrink_scale * ui_scale.mV[VX]); + draw_center_rect.mTop = llround(ui_translation.mV[VY] + lerp((F32)height, (F32)draw_center_rect.mTop, shrink_scale) * ui_scale.mV[VY]); + draw_center_rect.mRight = llround(ui_translation.mV[VX] + lerp((F32)width, (F32)draw_center_rect.mRight, shrink_scale) * ui_scale.mV[VX]); + draw_center_rect.mBottom = llround(ui_translation.mV[VY] + (F32)draw_center_rect.mBottom * shrink_scale * ui_scale.mV[VY]); + } + + LLRectf draw_outer_rect(ui_translation.mV[VX], + ui_translation.mV[VY] + height * ui_scale.mV[VY], + ui_translation.mV[VX] + width * ui_scale.mV[VX], + ui_translation.mV[VY]); + + LLGLSUIDefault gls_ui; + + if (solid_color) + { + if (LLGLSLShader::sNoFixedFunction) + { + gSolidColorProgram.bind(); + } + else + { + gGL.getTexUnit(0)->setTextureColorBlend(LLTexUnit::TBO_REPLACE, LLTexUnit::TBS_PREV_COLOR); + gGL.getTexUnit(0)->setTextureAlphaBlend(LLTexUnit::TBO_MULT, LLTexUnit::TBS_TEX_ALPHA, LLTexUnit::TBS_VERT_ALPHA); + } + } + + gGL.getTexUnit(0)->bind(image, true); + + gGL.color4fv(color.mV); + + const S32 NUM_VERTICES = 9 * 4; // 9 quads + LLVector2 uv[NUM_VERTICES]; + LLVector3 pos[NUM_VERTICES]; + + S32 index = 0; + + gGL.begin(LLRender::QUADS); + { + // draw bottom left + uv[index] = LLVector2(uv_outer_rect.mLeft, uv_outer_rect.mBottom); + pos[index] = LLVector3(draw_outer_rect.mLeft, draw_outer_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mBottom, 0.f); + index++; + + // draw bottom middle + uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); + index++; + + // draw bottom right + uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mRight, uv_outer_rect.mBottom); + pos[index] = LLVector3(draw_outer_rect.mRight, draw_outer_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); + index++; + + // draw left + uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mTop); + pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mTop, 0.f); + index++; + + // draw middle + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); + index++; + + // draw right + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mBottom); + pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mBottom, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mTop); + pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); + index++; + + // draw top left + uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mTop); + pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mLeft, uv_outer_rect.mTop); + pos[index] = LLVector3(draw_outer_rect.mLeft, draw_outer_rect.mTop, 0.f); + index++; + + // draw top middle + uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mTop, 0.f); + index++; + + // draw top right + uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mTop); + pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_outer_rect.mRight, uv_outer_rect.mTop); + pos[index] = LLVector3(draw_outer_rect.mRight, draw_outer_rect.mTop, 0.f); + index++; + + uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mTop); + pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mTop, 0.f); + index++; + + gGL.vertexBatchPreTransformed(pos, uv, NUM_VERTICES); + } + gGL.end(); + + if (solid_color) + { + if (LLGLSLShader::sNoFixedFunction) + { + gUIProgram.bind(); + } + else + { + gGL.getTexUnit(0)->setTextureBlendType(LLTexUnit::TB_MULT); + } + } +} + +void gl_draw_rotated_image(S32 x, S32 y, F32 degrees, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect) +{ + gl_draw_scaled_rotated_image( x, y, image->getWidth(0), image->getHeight(0), degrees, image, color, uv_rect ); +} + +void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degrees, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect) +{ + if (NULL == image) + { + llwarns << "image == NULL; aborting function" << llendl; + return; + } + + LLGLSUIDefault gls_ui; + + + gGL.getTexUnit(0)->bind(image, true); + + gGL.color4fv(color.mV); + + if (degrees == 0.f) + { + const S32 NUM_VERTICES = 4; // 9 quads + LLVector2 uv[NUM_VERTICES]; + LLVector3 pos[NUM_VERTICES]; + + gGL.begin(LLRender::QUADS); + { + LLVector3 ui_scale = gGL.getUIScale(); + LLVector3 ui_translation = gGL.getUITranslation(); + ui_translation.mV[VX] += x; + ui_translation.mV[VY] += y; + ui_translation.scaleVec(ui_scale); + S32 index = 0; + S32 scaled_width = llround(width * ui_scale.mV[VX]); + S32 scaled_height = llround(height * ui_scale.mV[VY]); + + uv[index] = LLVector2(uv_rect.mRight, uv_rect.mTop); + pos[index] = LLVector3(ui_translation.mV[VX] + scaled_width, ui_translation.mV[VY] + scaled_height, 0.f); + index++; + + uv[index] = LLVector2(uv_rect.mLeft, uv_rect.mTop); + pos[index] = LLVector3(ui_translation.mV[VX], ui_translation.mV[VY] + scaled_height, 0.f); + index++; + + uv[index] = LLVector2(uv_rect.mLeft, uv_rect.mBottom); + pos[index] = LLVector3(ui_translation.mV[VX], ui_translation.mV[VY], 0.f); + index++; + + uv[index] = LLVector2(uv_rect.mRight, uv_rect.mBottom); + pos[index] = LLVector3(ui_translation.mV[VX] + scaled_width, ui_translation.mV[VY], 0.f); + index++; + + gGL.vertexBatchPreTransformed(pos, uv, NUM_VERTICES); + } + gGL.end(); + } + else + { + gGL.pushUIMatrix(); + gGL.translateUI((F32)x, (F32)y, 0.f); + + F32 offset_x = F32(width/2); + F32 offset_y = F32(height/2); + + gGL.translateUI(offset_x, offset_y, 0.f); + + LLMatrix3 quat(0.f, 0.f, degrees*DEG_TO_RAD); + + gGL.getTexUnit(0)->bind(image, true); + + gGL.color4fv(color.mV); + + gGL.begin(LLRender::QUADS); + { + LLVector3 v; + + v = LLVector3(offset_x, offset_y, 0.f) * quat; + gGL.texCoord2f(uv_rect.mRight, uv_rect.mTop); + gGL.vertex2f(v.mV[0], v.mV[1] ); + + v = LLVector3(-offset_x, offset_y, 0.f) * quat; + gGL.texCoord2f(uv_rect.mLeft, uv_rect.mTop); + gGL.vertex2f(v.mV[0], v.mV[1] ); + + v = LLVector3(-offset_x, -offset_y, 0.f) * quat; + gGL.texCoord2f(uv_rect.mLeft, uv_rect.mBottom); + gGL.vertex2f(v.mV[0], v.mV[1] ); + + v = LLVector3(offset_x, -offset_y, 0.f) * quat; + gGL.texCoord2f(uv_rect.mRight, uv_rect.mBottom); + gGL.vertex2f(v.mV[0], v.mV[1] ); + } + gGL.end(); + gGL.popUIMatrix(); + } +} + + +void gl_stippled_line_3d( const LLVector3& start, const LLVector3& end, const LLColor4& color, F32 phase ) +{ + phase = fmod(phase, 1.f); + + S32 shift = S32(phase * 4.f) % 4; + + // Stippled line + LLGLEnable stipple(GL_LINE_STIPPLE); + + gGL.color4f(color.mV[VRED], color.mV[VGREEN], color.mV[VBLUE], color.mV[VALPHA]); + + gGL.flush(); + glLineWidth(2.5f); + + if (!LLGLSLShader::sNoFixedFunction) + { + glLineStipple(2, 0x3333 << shift); + } + + gGL.begin(LLRender::LINES); + { + gGL.vertex3fv( start.mV ); + gGL.vertex3fv( end.mV ); + } + gGL.end(); + + LLRender2D::setLineWidth(1.f); +} + +void gl_arc_2d(F32 center_x, F32 center_y, F32 radius, S32 steps, BOOL filled, F32 start_angle, F32 end_angle) +{ + if (end_angle < start_angle) + { + end_angle += F_TWO_PI; + } + + gGL.pushUIMatrix(); + { + gGL.translateUI(center_x, center_y, 0.f); + + // Inexact, but reasonably fast. + F32 delta = (end_angle - start_angle) / steps; + F32 sin_delta = sin( delta ); + F32 cos_delta = cos( delta ); + F32 x = cosf(start_angle) * radius; + F32 y = sinf(start_angle) * radius; + + if (filled) + { + gGL.begin(LLRender::TRIANGLE_FAN); + gGL.vertex2f(0.f, 0.f); + // make sure circle is complete + steps += 1; + } + else + { + gGL.begin(LLRender::LINE_STRIP); + } + + while( steps-- ) + { + // Successive rotations + gGL.vertex2f( x, y ); + F32 x_new = x * cos_delta - y * sin_delta; + y = x * sin_delta + y * cos_delta; + x = x_new; + } + gGL.end(); + } + gGL.popUIMatrix(); +} + +void gl_circle_2d(F32 center_x, F32 center_y, F32 radius, S32 steps, BOOL filled) +{ + gGL.pushUIMatrix(); + { + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + gGL.translateUI(center_x, center_y, 0.f); + + // Inexact, but reasonably fast. + F32 delta = F_TWO_PI / steps; + F32 sin_delta = sin( delta ); + F32 cos_delta = cos( delta ); + F32 x = radius; + F32 y = 0.f; + + if (filled) + { + gGL.begin(LLRender::TRIANGLE_FAN); + gGL.vertex2f(0.f, 0.f); + // make sure circle is complete + steps += 1; + } + else + { + gGL.begin(LLRender::LINE_LOOP); + } + + while( steps-- ) + { + // Successive rotations + gGL.vertex2f( x, y ); + F32 x_new = x * cos_delta - y * sin_delta; + y = x * sin_delta + y * cos_delta; + x = x_new; + } + gGL.end(); + } + gGL.popUIMatrix(); +} + +// Renders a ring with sides (tube shape) +void gl_deep_circle( F32 radius, F32 depth, S32 steps ) +{ + F32 x = radius; + F32 y = 0.f; + F32 angle_delta = F_TWO_PI / (F32)steps; + gGL.begin( LLRender::TRIANGLE_STRIP ); + { + S32 step = steps + 1; // An extra step to close the circle. + while( step-- ) + { + gGL.vertex3f( x, y, depth ); + gGL.vertex3f( x, y, 0.f ); + + F32 x_new = x * cosf(angle_delta) - y * sinf(angle_delta); + y = x * sinf(angle_delta) + y * cosf(angle_delta); + x = x_new; + } + } + gGL.end(); +} + +void gl_ring( F32 radius, F32 width, const LLColor4& center_color, const LLColor4& side_color, S32 steps, BOOL render_center ) +{ + gGL.pushUIMatrix(); + { + gGL.translateUI(0.f, 0.f, -width / 2); + if( render_center ) + { + gGL.color4fv(center_color.mV); + gGL.diffuseColor4fv(center_color.mV); + gl_deep_circle( radius, width, steps ); + } + else + { + gGL.diffuseColor4fv(side_color.mV); + gl_washer_2d(radius, radius - width, steps, side_color, side_color); + gGL.translateUI(0.f, 0.f, width); + gl_washer_2d(radius - width, radius, steps, side_color, side_color); + } + } + gGL.popUIMatrix(); +} + +// Draw gray and white checkerboard with black border +void gl_rect_2d_checkerboard(const LLRect& rect, GLfloat alpha) +{ + if (!LLGLSLShader::sNoFixedFunction) + { + // Initialize the first time this is called. + const S32 PIXELS = 32; + static GLubyte checkerboard[PIXELS * PIXELS]; + static BOOL first = TRUE; + if( first ) + { + for( S32 i = 0; i < PIXELS; i++ ) + { + for( S32 j = 0; j < PIXELS; j++ ) + { + checkerboard[i * PIXELS + j] = ((i & 1) ^ (j & 1)) * 0xFF; + } + } + first = FALSE; + } + + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + // ...white squares + gGL.color4f( 1.f, 1.f, 1.f, alpha ); + gl_rect_2d(rect); + + // ...gray squares + gGL.color4f( .7f, .7f, .7f, alpha ); + gGL.flush(); + + glPolygonStipple( checkerboard ); + + LLGLEnable polygon_stipple(GL_POLYGON_STIPPLE); + gl_rect_2d(rect); + } + else + { //polygon stipple is deprecated, use "Checker" texture + LLPointer img = LLRender2D::getUIImage("Checker"); + gGL.getTexUnit(0)->bind(img->getImage()); + gGL.getTexUnit(0)->setTextureAddressMode(LLTexUnit::TAM_WRAP); + gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT); + + LLColor4 color(1.f, 1.f, 1.f, alpha); + LLRectf uv_rect(0, 0, rect.getWidth()/32.f, rect.getHeight()/32.f); + + gl_draw_scaled_image(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), + img->getImage(), color, uv_rect); + } + + gGL.flush(); +} + + +// Draws the area between two concentric circles, like +// a doughnut or washer. +void gl_washer_2d(F32 outer_radius, F32 inner_radius, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color) +{ + const F32 DELTA = F_TWO_PI / steps; + const F32 SIN_DELTA = sin( DELTA ); + const F32 COS_DELTA = cos( DELTA ); + + F32 x1 = outer_radius; + F32 y1 = 0.f; + F32 x2 = inner_radius; + F32 y2 = 0.f; + + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + + gGL.begin( LLRender::TRIANGLE_STRIP ); + { + steps += 1; // An extra step to close the circle. + while( steps-- ) + { + gGL.color4fv(outer_color.mV); + gGL.vertex2f( x1, y1 ); + gGL.color4fv(inner_color.mV); + gGL.vertex2f( x2, y2 ); + + F32 x1_new = x1 * COS_DELTA - y1 * SIN_DELTA; + y1 = x1 * SIN_DELTA + y1 * COS_DELTA; + x1 = x1_new; + + F32 x2_new = x2 * COS_DELTA - y2 * SIN_DELTA; + y2 = x2 * SIN_DELTA + y2 * COS_DELTA; + x2 = x2_new; + } + } + gGL.end(); +} + +// Draws the area between two concentric circles, like +// a doughnut or washer. +void gl_washer_segment_2d(F32 outer_radius, F32 inner_radius, F32 start_radians, F32 end_radians, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color) +{ + const F32 DELTA = (end_radians - start_radians) / steps; + const F32 SIN_DELTA = sin( DELTA ); + const F32 COS_DELTA = cos( DELTA ); + + F32 x1 = outer_radius * cos( start_radians ); + F32 y1 = outer_radius * sin( start_radians ); + F32 x2 = inner_radius * cos( start_radians ); + F32 y2 = inner_radius * sin( start_radians ); + + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); + gGL.begin( LLRender::TRIANGLE_STRIP ); + { + steps += 1; // An extra step to close the circle. + while( steps-- ) + { + gGL.color4fv(outer_color.mV); + gGL.vertex2f( x1, y1 ); + gGL.color4fv(inner_color.mV); + gGL.vertex2f( x2, y2 ); + + F32 x1_new = x1 * COS_DELTA - y1 * SIN_DELTA; + y1 = x1 * SIN_DELTA + y1 * COS_DELTA; + x1 = x1_new; + + F32 x2_new = x2 * COS_DELTA - y2 * SIN_DELTA; + y2 = x2 * SIN_DELTA + y2 * COS_DELTA; + x2 = x2_new; + } + } + gGL.end(); +} + +void gl_rect_2d_simple_tex( S32 width, S32 height ) +{ + gGL.begin( LLRender::QUADS ); + + gGL.texCoord2f(1.f, 1.f); + gGL.vertex2i(width, height); + + gGL.texCoord2f(0.f, 1.f); + gGL.vertex2i(0, height); + + gGL.texCoord2f(0.f, 0.f); + gGL.vertex2i(0, 0); + + gGL.texCoord2f(1.f, 0.f); + gGL.vertex2i(width, 0); + + gGL.end(); +} + +void gl_rect_2d_simple( S32 width, S32 height ) +{ + gGL.begin( LLRender::QUADS ); + gGL.vertex2i(width, height); + gGL.vertex2i(0, height); + gGL.vertex2i(0, 0); + gGL.vertex2i(width, 0); + gGL.end(); +} + +void gl_segmented_rect_2d_tex(const S32 left, + const S32 top, + const S32 right, + const S32 bottom, + const S32 texture_width, + const S32 texture_height, + const S32 border_size, + const U32 edges) +{ + S32 width = llabs(right - left); + S32 height = llabs(top - bottom); + + gGL.pushUIMatrix(); + + gGL.translateUI((F32)left, (F32)bottom, 0.f); + LLVector2 border_uv_scale((F32)border_size / (F32)texture_width, (F32)border_size / (F32)texture_height); + + if (border_uv_scale.mV[VX] > 0.5f) + { + border_uv_scale *= 0.5f / border_uv_scale.mV[VX]; + } + if (border_uv_scale.mV[VY] > 0.5f) + { + border_uv_scale *= 0.5f / border_uv_scale.mV[VY]; + } + + F32 border_scale = llmin((F32)border_size, (F32)width * 0.5f, (F32)height * 0.5f); + LLVector2 border_width_left = ((edges & (~(U32)ROUNDED_RECT_RIGHT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; + LLVector2 border_width_right = ((edges & (~(U32)ROUNDED_RECT_LEFT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; + LLVector2 border_height_bottom = ((edges & (~(U32)ROUNDED_RECT_TOP)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; + LLVector2 border_height_top = ((edges & (~(U32)ROUNDED_RECT_BOTTOM)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; + LLVector2 width_vec((F32)width, 0.f); + LLVector2 height_vec(0.f, (F32)height); + + gGL.begin(LLRender::QUADS); + { + // draw bottom left + gGL.texCoord2f(0.f, 0.f); + gGL.vertex2f(0.f, 0.f); + + gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv(border_width_left.mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + border_height_bottom).mV); + + gGL.texCoord2f(0.f, border_uv_scale.mV[VY]); + gGL.vertex2fv(border_height_bottom.mV); + + // draw bottom middle + gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv(border_width_left.mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv((width_vec - border_width_right).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + border_height_bottom).mV); + + // draw bottom right + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv((width_vec - border_width_right).mV); + + gGL.texCoord2f(1.f, 0.f); + gGL.vertex2fv(width_vec.mV); + + gGL.texCoord2f(1.f, border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec + border_height_bottom).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); + + // draw left + gGL.texCoord2f(0.f, border_uv_scale.mV[VY]); + gGL.vertex2fv(border_height_bottom.mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + border_height_bottom).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); + + gGL.texCoord2f(0.f, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((height_vec - border_height_top).mV); + + // draw middle + gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + border_height_bottom).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); + + // draw right + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); + + gGL.texCoord2f(1.f, border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec + border_height_bottom).mV); + + gGL.texCoord2f(1.f, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); + + // draw top left + gGL.texCoord2f(0.f, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((height_vec - border_height_top).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f); + gGL.vertex2fv((border_width_left + height_vec).mV); + + gGL.texCoord2f(0.f, 1.f); + gGL.vertex2fv((height_vec).mV); + + // draw top middle + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f); + gGL.vertex2fv((width_vec - border_width_right + height_vec).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f); + gGL.vertex2fv((border_width_left + height_vec).mV); + + // draw top right + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((width_vec + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f, 1.f); + gGL.vertex2fv((width_vec + height_vec).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f); + gGL.vertex2fv((width_vec - border_width_right + height_vec).mV); + } + gGL.end(); + + gGL.popUIMatrix(); +} + +//FIXME: rewrite to use scissor? +void gl_segmented_rect_2d_fragment_tex(const S32 left, + const S32 top, + const S32 right, + const S32 bottom, + const S32 texture_width, + const S32 texture_height, + const S32 border_size, + const F32 start_fragment, + const F32 end_fragment, + const U32 edges) +{ + S32 width = llabs(right - left); + S32 height = llabs(top - bottom); + + gGL.pushUIMatrix(); + + gGL.translateUI((F32)left, (F32)bottom, 0.f); + LLVector2 border_uv_scale((F32)border_size / (F32)texture_width, (F32)border_size / (F32)texture_height); + + if (border_uv_scale.mV[VX] > 0.5f) + { + border_uv_scale *= 0.5f / border_uv_scale.mV[VX]; + } + if (border_uv_scale.mV[VY] > 0.5f) + { + border_uv_scale *= 0.5f / border_uv_scale.mV[VY]; + } + + F32 border_scale = llmin((F32)border_size, (F32)width * 0.5f, (F32)height * 0.5f); + LLVector2 border_width_left = ((edges & (~(U32)ROUNDED_RECT_RIGHT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; + LLVector2 border_width_right = ((edges & (~(U32)ROUNDED_RECT_LEFT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; + LLVector2 border_height_bottom = ((edges & (~(U32)ROUNDED_RECT_TOP)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; + LLVector2 border_height_top = ((edges & (~(U32)ROUNDED_RECT_BOTTOM)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; + LLVector2 width_vec((F32)width, 0.f); + LLVector2 height_vec(0.f, (F32)height); + + F32 middle_start = border_scale / (F32)width; + F32 middle_end = 1.f - middle_start; + + F32 u_min; + F32 u_max; + LLVector2 x_min; + LLVector2 x_max; + + gGL.begin(LLRender::QUADS); + { + if (start_fragment < middle_start) + { + u_min = (start_fragment / middle_start) * border_uv_scale.mV[VX]; + u_max = llmin(end_fragment / middle_start, 1.f) * border_uv_scale.mV[VX]; + x_min = (start_fragment / middle_start) * border_width_left; + x_max = llmin(end_fragment / middle_start, 1.f) * border_width_left; + + // draw bottom left + gGL.texCoord2f(u_min, 0.f); + gGL.vertex2fv(x_min.mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv(x_max.mV); + + gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + border_height_bottom).mV); + + gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + border_height_bottom).mV); + + // draw left + gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + border_height_bottom).mV); + + gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + border_height_bottom).mV); + + gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + height_vec - border_height_top).mV); + + gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + height_vec - border_height_top).mV); + + // draw top left + gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + height_vec - border_height_top).mV); + + gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + height_vec - border_height_top).mV); + + gGL.texCoord2f(u_max, 1.f); + gGL.vertex2fv((x_max + height_vec).mV); + + gGL.texCoord2f(u_min, 1.f); + gGL.vertex2fv((x_min + height_vec).mV); + } + + if (end_fragment > middle_start || start_fragment < middle_end) + { + x_min = border_width_left + ((llclamp(start_fragment, middle_start, middle_end) - middle_start)) * width_vec; + x_max = border_width_left + ((llclamp(end_fragment, middle_start, middle_end) - middle_start)) * width_vec; + + // draw bottom middle + gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv(x_min.mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 0.f); + gGL.vertex2fv((x_max).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + border_height_bottom).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + border_height_bottom).mV); + + // draw middle + gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + border_height_bottom).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + border_height_bottom).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + height_vec - border_height_top).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + height_vec - border_height_top).mV); + + // draw top middle + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + height_vec - border_height_top).mV); + + gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f); + gGL.vertex2fv((x_max + height_vec).mV); + + gGL.texCoord2f(border_uv_scale.mV[VX], 1.f); + gGL.vertex2fv((x_min + height_vec).mV); + } + + if (end_fragment > middle_end) + { + u_min = (1.f - llmax(0.f, ((start_fragment - middle_end) / middle_start))) * border_uv_scale.mV[VX]; + u_max = (1.f - ((end_fragment - middle_end) / middle_start)) * border_uv_scale.mV[VX]; + x_min = width_vec - ((1.f - llmax(0.f, ((start_fragment - middle_end) / middle_start))) * border_width_right); + x_max = width_vec - ((1.f - ((end_fragment - middle_end) / middle_start)) * border_width_right); + + // draw bottom right + gGL.texCoord2f(u_min, 0.f); + gGL.vertex2fv((x_min).mV); + + gGL.texCoord2f(u_max, 0.f); + gGL.vertex2fv(x_max.mV); + + gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + border_height_bottom).mV); + + gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + border_height_bottom).mV); + + // draw right + gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + border_height_bottom).mV); + + gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + border_height_bottom).mV); + + gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + height_vec - border_height_top).mV); + + gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + height_vec - border_height_top).mV); + + // draw top right + gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_min + height_vec - border_height_top).mV); + + gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); + gGL.vertex2fv((x_max + height_vec - border_height_top).mV); + + gGL.texCoord2f(u_max, 1.f); + gGL.vertex2fv((x_max + height_vec).mV); + + gGL.texCoord2f(u_min, 1.f); + gGL.vertex2fv((x_min + height_vec).mV); + } + } + gGL.end(); + + gGL.popUIMatrix(); +} + +void gl_segmented_rect_3d_tex(const LLVector2& border_scale, const LLVector3& border_width, + const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec, + const U32 edges) +{ + LLVector3 left_border_width = ((edges & (~(U32)ROUNDED_RECT_RIGHT)) != 0) ? border_width : LLVector3::zero; + LLVector3 right_border_width = ((edges & (~(U32)ROUNDED_RECT_LEFT)) != 0) ? border_width : LLVector3::zero; + + LLVector3 top_border_height = ((edges & (~(U32)ROUNDED_RECT_BOTTOM)) != 0) ? border_height : LLVector3::zero; + LLVector3 bottom_border_height = ((edges & (~(U32)ROUNDED_RECT_TOP)) != 0) ? border_height : LLVector3::zero; + + + gGL.begin(LLRender::QUADS); + { + // draw bottom left + gGL.texCoord2f(0.f, 0.f); + gGL.vertex3f(0.f, 0.f, 0.f); + + gGL.texCoord2f(border_scale.mV[VX], 0.f); + gGL.vertex3fv(left_border_width.mV); + + gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + bottom_border_height).mV); + + gGL.texCoord2f(0.f, border_scale.mV[VY]); + gGL.vertex3fv(bottom_border_height.mV); + + // draw bottom middle + gGL.texCoord2f(border_scale.mV[VX], 0.f); + gGL.vertex3fv(left_border_width.mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], 0.f); + gGL.vertex3fv((width_vec - right_border_width).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); + + gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + bottom_border_height).mV); + + // draw bottom right + gGL.texCoord2f(1.f - border_scale.mV[VX], 0.f); + gGL.vertex3fv((width_vec - right_border_width).mV); + + gGL.texCoord2f(1.f, 0.f); + gGL.vertex3fv(width_vec.mV); + + gGL.texCoord2f(1.f, border_scale.mV[VY]); + gGL.vertex3fv((width_vec + bottom_border_height).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); + + // draw left + gGL.texCoord2f(0.f, border_scale.mV[VY]); + gGL.vertex3fv(bottom_border_height.mV); + + gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + bottom_border_height).mV); + + gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); + + gGL.texCoord2f(0.f, 1.f - border_scale.mV[VY]); + gGL.vertex3fv((height_vec - top_border_height).mV); + + // draw middle + gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + bottom_border_height).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); + + gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); + + // draw right + gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); + + gGL.texCoord2f(1.f, border_scale.mV[VY]); + gGL.vertex3fv((width_vec + bottom_border_height).mV); + + gGL.texCoord2f(1.f, 1.f - border_scale.mV[VY]); + gGL.vertex3fv((width_vec + height_vec - top_border_height).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); + + // draw top left + gGL.texCoord2f(0.f, 1.f - border_scale.mV[VY]); + gGL.vertex3fv((height_vec - top_border_height).mV); + + gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); + + gGL.texCoord2f(border_scale.mV[VX], 1.f); + gGL.vertex3fv((left_border_width + height_vec).mV); + + gGL.texCoord2f(0.f, 1.f); + gGL.vertex3fv((height_vec).mV); + + // draw top middle + gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f); + gGL.vertex3fv((width_vec - right_border_width + height_vec).mV); + + gGL.texCoord2f(border_scale.mV[VX], 1.f); + gGL.vertex3fv((left_border_width + height_vec).mV); + + // draw top right + gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); + gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); + + gGL.texCoord2f(1.f, 1.f - border_scale.mV[VY]); + gGL.vertex3fv((width_vec + height_vec - top_border_height).mV); + + gGL.texCoord2f(1.f, 1.f); + gGL.vertex3fv((width_vec + height_vec).mV); + + gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f); + gGL.vertex3fv((width_vec - right_border_width + height_vec).mV); + } + gGL.end(); + +} + +void gl_segmented_rect_3d_tex_top(const LLVector2& border_scale, const LLVector3& border_width, const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec) +{ + gl_segmented_rect_3d_tex(border_scale, border_width, border_height, width_vec, height_vec, ROUNDED_RECT_TOP); +} + +// static +void LLRender2D::initClass(LLImageProviderInterface* image_provider, + const LLVector2* scale_factor) +{ + sGLScaleFactor = (scale_factor == NULL) ? LLVector2(1.f, 1.f) : *scale_factor; + sImageProvider = image_provider; +} + +// static +void LLRender2D::cleanupClass() +{ + if(sImageProvider) + { + sImageProvider->cleanUp(); + } +} + + +//static +void LLRender2D::translate(F32 x, F32 y, F32 z) +{ + gGL.translateUI(x,y,z); + LLFontGL::sCurOrigin.mX += (S32) x; + LLFontGL::sCurOrigin.mY += (S32) y; + LLFontGL::sCurDepth += z; +} + +//static +void LLRender2D::pushMatrix() +{ + gGL.pushUIMatrix(); + LLFontGL::sOriginStack.push_back(std::make_pair(LLFontGL::sCurOrigin, LLFontGL::sCurDepth)); +} + +//static +void LLRender2D::popMatrix() +{ + gGL.popUIMatrix(); + LLFontGL::sCurOrigin = LLFontGL::sOriginStack.back().first; + LLFontGL::sCurDepth = LLFontGL::sOriginStack.back().second; + LLFontGL::sOriginStack.pop_back(); +} + +//static +void LLRender2D::loadIdentity() +{ + gGL.loadUIIdentity(); + LLFontGL::sCurOrigin.mX = 0; + LLFontGL::sCurOrigin.mY = 0; + LLFontGL::sCurDepth = 0.f; +} + +//static +void LLRender2D::setScaleFactor(const LLVector2 &scale_factor) +{ + sGLScaleFactor = scale_factor; +} + +//static +void LLRender2D::setLineWidth(F32 width) +{ + gGL.flush(); + glLineWidth(width * lerp(sGLScaleFactor.mV[VX], sGLScaleFactor.mV[VY], 0.5f)); +} + +//static +LLPointer LLRender2D::getUIImageByID(const LLUUID& image_id, S32 priority) +{ + if (sImageProvider) + { + return sImageProvider->getUIImageByID(image_id, priority); + } + else + { + return NULL; + } +} + +//static +LLPointer LLRender2D::getUIImage(const std::string& name, S32 priority) +{ + if (!name.empty() && sImageProvider) + return sImageProvider->getUIImage(name, priority); + else + return NULL; +} + diff --git a/indra/llrender/llrender2dutils.h b/indra/llrender/llrender2dutils.h new file mode 100644 index 0000000000..4ea2d06d99 --- /dev/null +++ b/indra/llrender/llrender2dutils.h @@ -0,0 +1,164 @@ +/** + * @file llrender2dutils.h + * @brief GL function declarations for immediate-mode gl drawing. + * + * $LicenseInfo:firstyear=2012&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +// All immediate-mode gl drawing should happen here. + + +#ifndef LL_RENDER2DUTILS_H +#define LL_RENDER2DUTILS_H + +#include "llpointer.h" // LLPointer<> +#include "llrect.h" +#include "llglslshader.h" + +class LLColor4; +class LLVector3; +class LLVector2; +class LLUIImage; +class LLUUID; + +extern const LLColor4 UI_VERTEX_COLOR; + +BOOL ui_point_in_rect(S32 x, S32 y, S32 left, S32 top, S32 right, S32 bottom); +void gl_state_for_2d(S32 width, S32 height); + +void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2); +void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2, const LLColor4 &color ); +void gl_triangle_2d(S32 x1, S32 y1, S32 x2, S32 y2, S32 x3, S32 y3, const LLColor4& color, BOOL filled); +void gl_rect_2d_simple( S32 width, S32 height ); + +void gl_draw_x(const LLRect& rect, const LLColor4& color); + +void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, BOOL filled = TRUE ); +void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, BOOL filled = TRUE ); +void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, S32 pixel_offset = 0, BOOL filled = TRUE ); +void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, S32 pixel_offset = 0, BOOL filled = TRUE ); +void gl_rect_2d(const LLRect& rect, BOOL filled = TRUE ); +void gl_rect_2d(const LLRect& rect, const LLColor4& color, BOOL filled = TRUE ); +void gl_rect_2d_checkerboard(const LLRect& rect, GLfloat alpha = 1.0f); + +void gl_drop_shadow(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &start_color, S32 lines); + +void gl_circle_2d(F32 x, F32 y, F32 radius, S32 steps, BOOL filled); +void gl_arc_2d(F32 center_x, F32 center_y, F32 radius, S32 steps, BOOL filled, F32 start_angle, F32 end_angle); +void gl_deep_circle( F32 radius, F32 depth ); +void gl_ring( F32 radius, F32 width, const LLColor4& center_color, const LLColor4& side_color, S32 steps, BOOL render_center ); +void gl_corners_2d(S32 left, S32 top, S32 right, S32 bottom, S32 length, F32 max_frac); +void gl_washer_2d(F32 outer_radius, F32 inner_radius, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color); +void gl_washer_segment_2d(F32 outer_radius, F32 inner_radius, F32 start_radians, F32 end_radians, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color); + +void gl_draw_image(S32 x, S32 y, LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); +void gl_draw_scaled_image(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); +void gl_draw_rotated_image(S32 x, S32 y, F32 degrees, LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); +void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degrees,LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); +void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 border_width, S32 border_height, S32 width, S32 height, LLTexture* image, const LLColor4 &color, BOOL solid_color = FALSE, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); +void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4 &color, BOOL solid_color = FALSE, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f), const LLRectf& scale_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); + +void gl_stippled_line_3d( const LLVector3& start, const LLVector3& end, const LLColor4& color, F32 phase = 0.f ); + +void gl_rect_2d_simple_tex( S32 width, S32 height ); + +// segmented rectangles + +/* + TL |______TOP_________| TR + /| |\ + _/_|__________________|_\_ + L| | MIDDLE | |R + _|_|__________________|_|_ + \ | BOTTOM | / + BL\|__________________|/ BR + | | +*/ + +typedef enum e_rounded_edge +{ + ROUNDED_RECT_LEFT = 0x1, + ROUNDED_RECT_TOP = 0x2, + ROUNDED_RECT_RIGHT = 0x4, + ROUNDED_RECT_BOTTOM = 0x8, + ROUNDED_RECT_ALL = 0xf +}ERoundedEdge; + + +void gl_segmented_rect_2d_tex(const S32 left, const S32 top, const S32 right, const S32 bottom, const S32 texture_width, const S32 texture_height, const S32 border_size, const U32 edges = ROUNDED_RECT_ALL); +void gl_segmented_rect_2d_fragment_tex(const S32 left, const S32 top, const S32 right, const S32 bottom, const S32 texture_width, const S32 texture_height, const S32 border_size, const F32 start_fragment, const F32 end_fragment, const U32 edges = ROUNDED_RECT_ALL); +void gl_segmented_rect_3d_tex(const LLVector2& border_scale, const LLVector3& border_width, const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec, U32 edges = ROUNDED_RECT_ALL); +void gl_segmented_rect_3d_tex_top(const LLVector2& border_scale, const LLVector3& border_width, const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec); + +inline void gl_rect_2d( const LLRect& rect, BOOL filled ) +{ + gl_rect_2d( rect.mLeft, rect.mTop, rect.mRight, rect.mBottom, filled ); +} + +inline void gl_rect_2d_offset_local( const LLRect& rect, S32 pixel_offset, BOOL filled) +{ + gl_rect_2d_offset_local( rect.mLeft, rect.mTop, rect.mRight, rect.mBottom, pixel_offset, filled ); +} + +class LLImageProviderInterface; + +class LLRender2D +{ + LOG_CLASS(LLRender2D); +public: + static void initClass(LLImageProviderInterface* image_provider, + const LLVector2* scale_factor); + static void cleanupClass(); + + static void pushMatrix(); + static void popMatrix(); + static void loadIdentity(); + static void translate(F32 x, F32 y, F32 z = 0.0f); + + static void setLineWidth(F32 width); + static void setScaleFactor(const LLVector2& scale_factor); + + static LLPointer getUIImageByID(const LLUUID& image_id, S32 priority = 0); + static LLPointer getUIImage(const std::string& name, S32 priority = 0); + + static LLVector2 sGLScaleFactor; +private: + static LLImageProviderInterface* sImageProvider; +}; + +class LLImageProviderInterface +{ +protected: + LLImageProviderInterface() {}; + virtual ~LLImageProviderInterface() {}; +public: + virtual LLPointer getUIImage(const std::string& name, S32 priority) = 0; + virtual LLPointer getUIImageByID(const LLUUID& id, S32 priority) = 0; + virtual void cleanUp() = 0; +}; + + +extern LLGLSLShader gSolidColorProgram; +extern LLGLSLShader gUIProgram; + +#endif // LL_RENDER2DUTILS_H + diff --git a/indra/llrender/lluiimage.cpp b/indra/llrender/lluiimage.cpp new file mode 100644 index 0000000000..a632e7ed2f --- /dev/null +++ b/indra/llrender/lluiimage.cpp @@ -0,0 +1,199 @@ +/** + * @file lluiimage.cpp + * @brief UI implementation + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +// Utilities functions the user interface needs + +//#include "llviewerprecompiledheaders.h" +#include "linden_common.h" + +// Project includes +#include "lluiimage.h" +#include "llrender2dutils.h" + +LLUIImage::LLUIImage(const std::string& name, LLPointer image) +: mName(name), + mImage(image), + mScaleRegion(0.f, 1.f, 1.f, 0.f), + mClipRegion(0.f, 1.f, 1.f, 0.f), + mUniformScaling(TRUE), + mNoClip(TRUE), + mImageLoaded(NULL) +{ +} + +LLUIImage::~LLUIImage() +{ + delete mImageLoaded; +} + +void LLUIImage::setClipRegion(const LLRectf& region) +{ + mClipRegion = region; + mNoClip = mClipRegion.mLeft == 0.f + && mClipRegion.mRight == 1.f + && mClipRegion.mBottom == 0.f + && mClipRegion.mTop == 1.f; +} + +void LLUIImage::setScaleRegion(const LLRectf& region) +{ + mScaleRegion = region; + mUniformScaling = mScaleRegion.mLeft == 0.f + && mScaleRegion.mRight == 1.f + && mScaleRegion.mBottom == 0.f + && mScaleRegion.mTop == 1.f; +} + +//TODO: move drawing implementation inside class +void LLUIImage::draw(S32 x, S32 y, const LLColor4& color) const +{ + gl_draw_scaled_image(x, y, getWidth(), getHeight(), mImage, color, mClipRegion); +} + +void LLUIImage::draw(S32 x, S32 y, S32 width, S32 height, const LLColor4& color) const +{ + if (mUniformScaling) + { + gl_draw_scaled_image(x, y, width, height, mImage, color, mClipRegion); + } + else + { + gl_draw_scaled_image_with_border( + x, y, + width, height, + mImage, + color, + FALSE, + mClipRegion, + mScaleRegion); + } +} + +void LLUIImage::drawSolid(S32 x, S32 y, S32 width, S32 height, const LLColor4& color) const +{ + gl_draw_scaled_image_with_border( + x, y, + width, height, + mImage, + color, + TRUE, + mClipRegion, + mScaleRegion); +} + +void LLUIImage::drawBorder(S32 x, S32 y, S32 width, S32 height, const LLColor4& color, S32 border_width) const +{ + LLRect border_rect; + border_rect.setOriginAndSize(x, y, width, height); + border_rect.stretch(border_width, border_width); + drawSolid(border_rect, color); +} + +S32 LLUIImage::getWidth() const +{ + // return clipped dimensions of actual image area + return llround((F32)mImage->getWidth(0) * mClipRegion.getWidth()); +} + +S32 LLUIImage::getHeight() const +{ + // return clipped dimensions of actual image area + return llround((F32)mImage->getHeight(0) * mClipRegion.getHeight()); +} + +S32 LLUIImage::getTextureWidth() const +{ + return mImage->getWidth(0); +} + +S32 LLUIImage::getTextureHeight() const +{ + return mImage->getHeight(0); +} + +boost::signals2::connection LLUIImage::addLoadedCallback( const image_loaded_signal_t::slot_type& cb ) +{ + if (!mImageLoaded) + { + mImageLoaded = new image_loaded_signal_t(); + } + return mImageLoaded->connect(cb); +} + + +void LLUIImage::onImageLoaded() +{ + if (mImageLoaded) + { + (*mImageLoaded)(); + } +} + + +namespace LLInitParam +{ + void ParamValue >::updateValueFromBlock() + { + // The keyword "none" is specifically requesting a null image + // do not default to current value. Used to overwrite template images. + if (name() == "none") + { + updateValue(NULL); + return; + } + + LLUIImage* imagep = LLRender2D::getUIImage(name()); + if (imagep) + { + updateValue(imagep); + } + } + + void ParamValue >::updateBlockFromValue(bool make_block_authoritative) + { + if (getValue() == NULL) + { + name.set("none", make_block_authoritative); + } + else + { + name.set(getValue()->getName(), make_block_authoritative); + } + } + + + bool ParamCompare::equals( + LLUIImage* const &a, + LLUIImage* const &b) + { + // force all LLUIImages for XML UI export to be "non-default" + if (!a && !b) + return false; + else + return (a == b); + } +} + diff --git a/indra/llrender/lluiimage.h b/indra/llrender/lluiimage.h new file mode 100644 index 0000000000..f07e8fa746 --- /dev/null +++ b/indra/llrender/lluiimage.h @@ -0,0 +1,124 @@ +/** + * @file lluiimage.h + * @brief wrapper for images used in the UI that handles smart scaling, etc. + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLUIIMAGE_H +#define LL_LLUIIMAGE_H + +#include "v4color.h" +#include "llpointer.h" +#include "llrefcount.h" +#include "llrefcount.h" +#include "llrect.h" +#include +#include +#include "llinitparam.h" +#include "lltexture.h" + +extern const LLColor4 UI_VERTEX_COLOR; + +class LLUIImage : public LLRefCount +{ +public: + typedef boost::signals2::signal image_loaded_signal_t; + + LLUIImage(const std::string& name, LLPointer image); + virtual ~LLUIImage(); + + void setClipRegion(const LLRectf& region); + void setScaleRegion(const LLRectf& region); + + LLPointer getImage() { return mImage; } + const LLPointer& getImage() const { return mImage; } + + void draw(S32 x, S32 y, S32 width, S32 height, const LLColor4& color = UI_VERTEX_COLOR) const; + void draw(S32 x, S32 y, const LLColor4& color = UI_VERTEX_COLOR) const; + void draw(const LLRect& rect, const LLColor4& color = UI_VERTEX_COLOR) const { draw(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), color); } + + void drawSolid(S32 x, S32 y, S32 width, S32 height, const LLColor4& color) const; + void drawSolid(const LLRect& rect, const LLColor4& color) const { drawSolid(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), color); } + void drawSolid(S32 x, S32 y, const LLColor4& color) const { drawSolid(x, y, getWidth(), getHeight(), color); } + + void drawBorder(S32 x, S32 y, S32 width, S32 height, const LLColor4& color, S32 border_width) const; + void drawBorder(const LLRect& rect, const LLColor4& color, S32 border_width) const { drawBorder(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), color, border_width); } + void drawBorder(S32 x, S32 y, const LLColor4& color, S32 border_width) const { drawBorder(x, y, getWidth(), getHeight(), color, border_width); } + + const std::string& getName() const { return mName; } + + virtual S32 getWidth() const; + virtual S32 getHeight() const; + + // returns dimensions of underlying textures, which might not be equal to ui image portion + S32 getTextureWidth() const; + S32 getTextureHeight() const; + + boost::signals2::connection addLoadedCallback( const image_loaded_signal_t::slot_type& cb ); + + void onImageLoaded(); + +protected: + image_loaded_signal_t* mImageLoaded; + + std::string mName; + LLRectf mScaleRegion; + LLRectf mClipRegion; + LLPointer mImage; + BOOL mUniformScaling; + BOOL mNoClip; +}; + +namespace LLInitParam +{ + template<> + class ParamValue > + : public CustomParamValue + { + typedef boost::add_reference::type>::type T_const_ref; + typedef CustomParamValue super_t; + public: + Optional name; + + ParamValue(LLUIImage* const& image) + : super_t(image) + { + updateBlockFromValue(false); + addSynonym(name, "name"); + } + + void updateValueFromBlock(); + void updateBlockFromValue(bool make_block_authoritative); + }; + + // Need custom comparison function for our test app, which only loads + // LLUIImage* as NULL. + template<> + struct ParamCompare + { + static bool equals(LLUIImage* const &a, LLUIImage* const &b); + }; +} + +typedef LLPointer LLUIImagePtr; +#endif diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt index d92b6aa1c0..4d4b8edc37 100644 --- a/indra/llui/CMakeLists.txt +++ b/indra/llui/CMakeLists.txt @@ -109,7 +109,6 @@ set(llui_SOURCE_FILES lluicolortable.cpp lluictrl.cpp lluictrlfactory.cpp - lluiimage.cpp lluistring.cpp llundo.cpp llurlaction.cpp @@ -219,7 +218,6 @@ set(llui_HEADER_FILES lluifwd.h llui.h lluicolor.h - lluiimage.h lluistring.h llundo.h llurlaction.h diff --git a/indra/llui/llcombobox.cpp b/indra/llui/llcombobox.cpp index 806d2ef3f6..16e79b211d 100644 --- a/indra/llui/llcombobox.cpp +++ b/indra/llui/llcombobox.cpp @@ -551,7 +551,7 @@ void LLComboBox::showList() LLCoordWindow window_size; getWindow()->getSize(&window_size); //HACK: shouldn't have to know about scale here - mList->fitContents( 192, llfloor((F32)window_size.mY / LLUI::sGLScaleFactor.mV[VY]) - 50 ); + mList->fitContents( 192, llfloor((F32)window_size.mY / LLUI::getScaleFactor().mV[VY]) - 50 ); // Make sure that we can see the whole list LLRect root_view_local; diff --git a/indra/llui/lllineeditor.cpp b/indra/llui/lllineeditor.cpp index 48d49af588..d1e67a7d6b 100644 --- a/indra/llui/lllineeditor.cpp +++ b/indra/llui/lllineeditor.cpp @@ -2022,8 +2022,8 @@ void LLLineEditor::draw() LLRect screen_pos = calcScreenRect(); LLCoordGL ime_pos( screen_pos.mLeft + pixels_after_scroll, screen_pos.mTop - lineeditor_v_pad ); - ime_pos.mX = (S32) (ime_pos.mX * LLUI::sGLScaleFactor.mV[VX]); - ime_pos.mY = (S32) (ime_pos.mY * LLUI::sGLScaleFactor.mV[VY]); + ime_pos.mX = (S32) (ime_pos.mX * LLUI::getScaleFactor().mV[VX]); + ime_pos.mY = (S32) (ime_pos.mY * LLUI::getScaleFactor().mV[VY]); getWindow()->setLanguageTextInput( ime_pos ); } } @@ -2570,7 +2570,7 @@ void LLLineEditor::markAsPreedit(S32 position, S32 length) S32 LLLineEditor::getPreeditFontSize() const { - return llround(mGLFont->getLineHeight() * LLUI::sGLScaleFactor.mV[VY]); + return llround(mGLFont->getLineHeight() * LLUI::getScaleFactor().mV[VY]); } void LLLineEditor::setReplaceNewlinesWithSpaces(BOOL replace) diff --git a/indra/llui/lllocalcliprect.cpp b/indra/llui/lllocalcliprect.cpp index 6841301219..f3a526faeb 100644 --- a/indra/llui/lllocalcliprect.cpp +++ b/indra/llui/lllocalcliprect.cpp @@ -88,10 +88,10 @@ void LLScreenClipRect::updateScissorRegion() LLRect rect = sClipRectStack.top(); stop_glerror(); S32 x,y,w,h; - x = llfloor(rect.mLeft * LLUI::sGLScaleFactor.mV[VX]); - y = llfloor(rect.mBottom * LLUI::sGLScaleFactor.mV[VY]); - w = llmax(0, llceil(rect.getWidth() * LLUI::sGLScaleFactor.mV[VX])) + 1; - h = llmax(0, llceil(rect.getHeight() * LLUI::sGLScaleFactor.mV[VY])) + 1; + x = llfloor(rect.mLeft * LLUI::getScaleFactor().mV[VX]); + y = llfloor(rect.mBottom * LLUI::getScaleFactor().mV[VY]); + w = llmax(0, llceil(rect.getWidth() * LLUI::getScaleFactor().mV[VX])) + 1; + h = llmax(0, llceil(rect.getHeight() * LLUI::getScaleFactor().mV[VY])) + 1; glScissor( x,y,w,h ); stop_glerror(); } diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp index 3815eec447..abe74c3f20 100644 --- a/indra/llui/lltextbase.cpp +++ b/indra/llui/lltextbase.cpp @@ -513,8 +513,8 @@ void LLTextBase::drawCursor() LLRect screen_pos = calcScreenRect(); LLCoordGL ime_pos( screen_pos.mLeft + llfloor(cursor_rect.mLeft), screen_pos.mBottom + llfloor(cursor_rect.mTop) ); - ime_pos.mX = (S32) (ime_pos.mX * LLUI::sGLScaleFactor.mV[VX]); - ime_pos.mY = (S32) (ime_pos.mY * LLUI::sGLScaleFactor.mV[VY]); + ime_pos.mX = (S32) (ime_pos.mX * LLUI::getScaleFactor().mV[VX]); + ime_pos.mY = (S32) (ime_pos.mY * LLUI::getScaleFactor().mV[VY]); getWindow()->setLanguageTextInput( ime_pos ); } } diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp index 144b6960a1..1b22f87823 100644 --- a/indra/llui/lltexteditor.cpp +++ b/indra/llui/lltexteditor.cpp @@ -2843,7 +2843,7 @@ void LLTextEditor::markAsPreedit(S32 position, S32 length) S32 LLTextEditor::getPreeditFontSize() const { - return llround((F32)mDefaultFont->getLineHeight() * LLUI::sGLScaleFactor.mV[VY]); + return llround((F32)mDefaultFont->getLineHeight() * LLUI::getScaleFactor().mV[VY]); } BOOL LLTextEditor::isDirty() const diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp index 87bf518aa1..d5fdd1d064 100644 --- a/indra/llui/llui.cpp +++ b/indra/llui/llui.cpp @@ -39,6 +39,7 @@ #include "llrect.h" #include "lldir.h" #include "llgl.h" +#include "llsd.h" // Project includes #include "llcommandmanager.h" @@ -69,15 +70,12 @@ // // Globals // -const LLColor4 UI_VERTEX_COLOR(1.f, 1.f, 1.f, 1.f); // Language for UI construction std::map gTranslation; std::list gUntranslated; /*static*/ LLUI::settings_map_t LLUI::sSettingGroups; -/*static*/ LLImageProviderInterface* LLUI::sImageProvider = NULL; /*static*/ LLUIAudioCallback LLUI::sAudioCallback = NULL; -/*static*/ LLVector2 LLUI::sGLScaleFactor(1.f, 1.f); /*static*/ LLWindow* LLUI::sWindow = NULL; /*static*/ LLView* LLUI::sRootView = NULL; /*static*/ BOOL LLUI::sDirty = FALSE; @@ -137,1492 +135,13 @@ void make_ui_sound(const char* namep) } } -BOOL ui_point_in_rect(S32 x, S32 y, S32 left, S32 top, S32 right, S32 bottom) -{ - if (x < left || right < x) return FALSE; - if (y < bottom || top < y) return FALSE; - return TRUE; -} - - -// Puts GL into 2D drawing mode by turning off lighting, setting to an -// orthographic projection, etc. -void gl_state_for_2d(S32 width, S32 height) -{ - stop_glerror(); - F32 window_width = (F32) width;//gViewerWindow->getWindowWidth(); - F32 window_height = (F32) height;//gViewerWindow->getWindowHeight(); - - gGL.matrixMode(LLRender::MM_PROJECTION); - gGL.loadIdentity(); - gGL.ortho(0.0f, llmax(window_width, 1.f), 0.0f, llmax(window_height,1.f), -1.0f, 1.0f); - gGL.matrixMode(LLRender::MM_MODELVIEW); - gGL.loadIdentity(); - stop_glerror(); -} - - -void gl_draw_x(const LLRect& rect, const LLColor4& color) -{ - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - gGL.color4fv( color.mV ); - - gGL.begin( LLRender::LINES ); - gGL.vertex2i( rect.mLeft, rect.mTop ); - gGL.vertex2i( rect.mRight, rect.mBottom ); - gGL.vertex2i( rect.mLeft, rect.mBottom ); - gGL.vertex2i( rect.mRight, rect.mTop ); - gGL.end(); -} - - -void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, S32 pixel_offset, BOOL filled) -{ - gGL.color4fv(color.mV); - gl_rect_2d_offset_local(left, top, right, bottom, pixel_offset, filled); -} - -void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, S32 pixel_offset, BOOL filled) -{ - gGL.pushUIMatrix(); - left += LLFontGL::sCurOrigin.mX; - right += LLFontGL::sCurOrigin.mX; - bottom += LLFontGL::sCurOrigin.mY; - top += LLFontGL::sCurOrigin.mY; - - gGL.loadUIIdentity(); - gl_rect_2d(llfloor((F32)left * LLUI::sGLScaleFactor.mV[VX]) - pixel_offset, - llfloor((F32)top * LLUI::sGLScaleFactor.mV[VY]) + pixel_offset, - llfloor((F32)right * LLUI::sGLScaleFactor.mV[VX]) + pixel_offset, - llfloor((F32)bottom * LLUI::sGLScaleFactor.mV[VY]) - pixel_offset, - filled); - gGL.popUIMatrix(); -} - - -void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, BOOL filled ) -{ - stop_glerror(); - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - // Counterclockwise quad will face the viewer - if( filled ) - { - gGL.begin( LLRender::QUADS ); - gGL.vertex2i(left, top); - gGL.vertex2i(left, bottom); - gGL.vertex2i(right, bottom); - gGL.vertex2i(right, top); - gGL.end(); - } - else - { - if( gGLManager.mATIOffsetVerticalLines ) - { - // Work around bug in ATI driver: vertical lines are offset by (-1,-1) - gGL.begin( LLRender::LINES ); - - // Verticals - gGL.vertex2i(left + 1, top); - gGL.vertex2i(left + 1, bottom); - - gGL.vertex2i(right, bottom); - gGL.vertex2i(right, top); - - // Horizontals - top--; - right--; - gGL.vertex2i(left, bottom); - gGL.vertex2i(right, bottom); - - gGL.vertex2i(left, top); - gGL.vertex2i(right, top); - gGL.end(); - } - else - { - top--; - right--; - gGL.begin( LLRender::LINE_STRIP ); - gGL.vertex2i(left, top); - gGL.vertex2i(left, bottom); - gGL.vertex2i(right, bottom); - gGL.vertex2i(right, top); - gGL.vertex2i(left, top); - gGL.end(); - } - } - stop_glerror(); -} - -void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, BOOL filled ) -{ - gGL.color4fv( color.mV ); - gl_rect_2d( left, top, right, bottom, filled ); -} - - -void gl_rect_2d( const LLRect& rect, const LLColor4& color, BOOL filled ) -{ - gGL.color4fv( color.mV ); - gl_rect_2d( rect.mLeft, rect.mTop, rect.mRight, rect.mBottom, filled ); -} - -// Given a rectangle on the screen, draws a drop shadow _outside_ -// the right and bottom edges of it. Along the right it has width "lines" -// and along the bottom it has height "lines". -void gl_drop_shadow(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &start_color, S32 lines) -{ - stop_glerror(); - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - // HACK: Overlap with the rectangle by a single pixel. - right--; - bottom++; - lines++; - - LLColor4 end_color = start_color; - end_color.mV[VALPHA] = 0.f; - - gGL.begin(LLRender::QUADS); - - // Right edge, CCW faces screen - gGL.color4fv(start_color.mV); - gGL.vertex2i(right, top-lines); - gGL.vertex2i(right, bottom); - gGL.color4fv(end_color.mV); - gGL.vertex2i(right+lines, bottom); - gGL.vertex2i(right+lines, top-lines); - - // Bottom edge, CCW faces screen - gGL.color4fv(start_color.mV); - gGL.vertex2i(right, bottom); - gGL.vertex2i(left+lines, bottom); - gGL.color4fv(end_color.mV); - gGL.vertex2i(left+lines, bottom-lines); - gGL.vertex2i(right, bottom-lines); - - // bottom left Corner - gGL.color4fv(start_color.mV); - gGL.vertex2i(left+lines, bottom); - gGL.color4fv(end_color.mV); - gGL.vertex2i(left, bottom); - // make the bottom left corner not sharp - gGL.vertex2i(left+1, bottom-lines+1); - gGL.vertex2i(left+lines, bottom-lines); - - // bottom right corner - gGL.color4fv(start_color.mV); - gGL.vertex2i(right, bottom); - gGL.color4fv(end_color.mV); - gGL.vertex2i(right, bottom-lines); - // make the rightmost corner not sharp - gGL.vertex2i(right+lines-1, bottom-lines+1); - gGL.vertex2i(right+lines, bottom); - - // top right corner - gGL.color4fv(start_color.mV); - gGL.vertex2i( right, top-lines ); - gGL.color4fv(end_color.mV); - gGL.vertex2i( right+lines, top-lines ); - // make the corner not sharp - gGL.vertex2i( right+lines-1, top-1 ); - gGL.vertex2i( right, top ); - - gGL.end(); - stop_glerror(); -} - -void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2 ) -{ - // Work around bug in ATI driver: vertical lines are offset by (-1,-1) - if( (x1 == x2) && gGLManager.mATIOffsetVerticalLines ) - { - x1++; - x2++; - y1++; - y2++; - } - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - gGL.begin(LLRender::LINES); - gGL.vertex2i(x1, y1); - gGL.vertex2i(x2, y2); - gGL.end(); -} - -void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2, const LLColor4 &color ) -{ - // Work around bug in ATI driver: vertical lines are offset by (-1,-1) - if( (x1 == x2) && gGLManager.mATIOffsetVerticalLines ) - { - x1++; - x2++; - y1++; - y2++; - } - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - gGL.color4fv( color.mV ); - - gGL.begin(LLRender::LINES); - gGL.vertex2i(x1, y1); - gGL.vertex2i(x2, y2); - gGL.end(); -} - -void gl_triangle_2d(S32 x1, S32 y1, S32 x2, S32 y2, S32 x3, S32 y3, const LLColor4& color, BOOL filled) -{ - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - gGL.color4fv(color.mV); - - if (filled) - { - gGL.begin(LLRender::TRIANGLES); - } - else - { - gGL.begin(LLRender::LINE_LOOP); - } - gGL.vertex2i(x1, y1); - gGL.vertex2i(x2, y2); - gGL.vertex2i(x3, y3); - gGL.end(); -} - -void gl_corners_2d(S32 left, S32 top, S32 right, S32 bottom, S32 length, F32 max_frac) -{ - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - length = llmin((S32)(max_frac*(right - left)), length); - length = llmin((S32)(max_frac*(top - bottom)), length); - gGL.begin(LLRender::LINES); - gGL.vertex2i(left, top); - gGL.vertex2i(left + length, top); - - gGL.vertex2i(left, top); - gGL.vertex2i(left, top - length); - - gGL.vertex2i(left, bottom); - gGL.vertex2i(left + length, bottom); - - gGL.vertex2i(left, bottom); - gGL.vertex2i(left, bottom + length); - - gGL.vertex2i(right, top); - gGL.vertex2i(right - length, top); - - gGL.vertex2i(right, top); - gGL.vertex2i(right, top - length); - - gGL.vertex2i(right, bottom); - gGL.vertex2i(right - length, bottom); - - gGL.vertex2i(right, bottom); - gGL.vertex2i(right, bottom + length); - gGL.end(); -} - - -void gl_draw_image( S32 x, S32 y, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect ) -{ - if (NULL == image) - { - llwarns << "image == NULL; aborting function" << llendl; - return; - } - gl_draw_scaled_rotated_image( x, y, image->getWidth(0), image->getHeight(0), 0.f, image, color, uv_rect ); -} - -void gl_draw_scaled_image(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect) -{ - if (NULL == image) - { - llwarns << "image == NULL; aborting function" << llendl; - return; - } - gl_draw_scaled_rotated_image( x, y, width, height, 0.f, image, color, uv_rect ); -} - -void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 border_width, S32 border_height, S32 width, S32 height, LLTexture* image, const LLColor4& color, BOOL solid_color, const LLRectf& uv_rect) -{ - if (NULL == image) - { - llwarns << "image == NULL; aborting function" << llendl; - return; - } - - // scale screen size of borders down - F32 border_width_fraction = (F32)border_width / (F32)image->getWidth(0); - F32 border_height_fraction = (F32)border_height / (F32)image->getHeight(0); - - LLRectf scale_rect(border_width_fraction, 1.f - border_height_fraction, 1.f - border_width_fraction, border_height_fraction); - gl_draw_scaled_image_with_border(x, y, width, height, image, color, solid_color, uv_rect, scale_rect); -} - -void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4& color, BOOL solid_color, const LLRectf& uv_outer_rect, const LLRectf& center_rect) -{ - stop_glerror(); - - if (NULL == image) - { - llwarns << "image == NULL; aborting function" << llendl; - return; - } - - // add in offset of current image to current UI translation - const LLVector3 ui_scale = gGL.getUIScale(); - const LLVector3 ui_translation = (gGL.getUITranslation() + LLVector3(x, y, 0.f)).scaledVec(ui_scale); - - F32 uv_width = uv_outer_rect.getWidth(); - F32 uv_height = uv_outer_rect.getHeight(); - - // shrink scaling region to be proportional to clipped image region - LLRectf uv_center_rect( - uv_outer_rect.mLeft + (center_rect.mLeft * uv_width), - uv_outer_rect.mBottom + (center_rect.mTop * uv_height), - uv_outer_rect.mLeft + (center_rect.mRight * uv_width), - uv_outer_rect.mBottom + (center_rect.mBottom * uv_height)); - - F32 image_width = image->getWidth(0); - F32 image_height = image->getHeight(0); - - S32 image_natural_width = llround(image_width * uv_width); - S32 image_natural_height = llround(image_height * uv_height); - - LLRectf draw_center_rect( uv_center_rect.mLeft * image_width, - uv_center_rect.mTop * image_height, - uv_center_rect.mRight * image_width, - uv_center_rect.mBottom * image_height); - - { // scale fixed region of image to drawn region - draw_center_rect.mRight += width - image_natural_width; - draw_center_rect.mTop += height - image_natural_height; - - F32 border_shrink_width = llmax(0.f, draw_center_rect.mLeft - draw_center_rect.mRight); - F32 border_shrink_height = llmax(0.f, draw_center_rect.mBottom - draw_center_rect.mTop); - - F32 shrink_width_ratio = center_rect.getWidth() == 1.f ? 0.f : border_shrink_width / ((F32)image_natural_width * (1.f - center_rect.getWidth())); - F32 shrink_height_ratio = center_rect.getHeight() == 1.f ? 0.f : border_shrink_height / ((F32)image_natural_height * (1.f - center_rect.getHeight())); - - F32 shrink_scale = 1.f - llmax(shrink_width_ratio, shrink_height_ratio); - - draw_center_rect.mLeft = llround(ui_translation.mV[VX] + (F32)draw_center_rect.mLeft * shrink_scale * ui_scale.mV[VX]); - draw_center_rect.mTop = llround(ui_translation.mV[VY] + lerp((F32)height, (F32)draw_center_rect.mTop, shrink_scale) * ui_scale.mV[VY]); - draw_center_rect.mRight = llround(ui_translation.mV[VX] + lerp((F32)width, (F32)draw_center_rect.mRight, shrink_scale) * ui_scale.mV[VX]); - draw_center_rect.mBottom = llround(ui_translation.mV[VY] + (F32)draw_center_rect.mBottom * shrink_scale * ui_scale.mV[VY]); - } - - LLRectf draw_outer_rect(ui_translation.mV[VX], - ui_translation.mV[VY] + height * ui_scale.mV[VY], - ui_translation.mV[VX] + width * ui_scale.mV[VX], - ui_translation.mV[VY]); - - LLGLSUIDefault gls_ui; - - if (solid_color) - { - if (LLGLSLShader::sNoFixedFunction) - { - gSolidColorProgram.bind(); - } - else - { - gGL.getTexUnit(0)->setTextureColorBlend(LLTexUnit::TBO_REPLACE, LLTexUnit::TBS_PREV_COLOR); - gGL.getTexUnit(0)->setTextureAlphaBlend(LLTexUnit::TBO_MULT, LLTexUnit::TBS_TEX_ALPHA, LLTexUnit::TBS_VERT_ALPHA); - } - } - - gGL.getTexUnit(0)->bind(image, true); - - gGL.color4fv(color.mV); - - const S32 NUM_VERTICES = 9 * 4; // 9 quads - LLVector2 uv[NUM_VERTICES]; - LLVector3 pos[NUM_VERTICES]; - - S32 index = 0; - - gGL.begin(LLRender::QUADS); - { - // draw bottom left - uv[index] = LLVector2(uv_outer_rect.mLeft, uv_outer_rect.mBottom); - pos[index] = LLVector3(draw_outer_rect.mLeft, draw_outer_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mBottom, 0.f); - index++; - - // draw bottom middle - uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); - index++; - - // draw bottom right - uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mRight, uv_outer_rect.mBottom); - pos[index] = LLVector3(draw_outer_rect.mRight, draw_outer_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); - index++; - - // draw left - uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mTop); - pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mTop, 0.f); - index++; - - // draw middle - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); - index++; - - // draw right - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mBottom); - pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mBottom, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mTop); - pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); - index++; - - // draw top left - uv[index] = LLVector2(uv_outer_rect.mLeft, uv_center_rect.mTop); - pos[index] = LLVector3(draw_outer_rect.mLeft, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mLeft, uv_outer_rect.mTop); - pos[index] = LLVector3(draw_outer_rect.mLeft, draw_outer_rect.mTop, 0.f); - index++; - - // draw top middle - uv[index] = LLVector2(uv_center_rect.mLeft, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mLeft, uv_outer_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mLeft, draw_outer_rect.mTop, 0.f); - index++; - - // draw top right - uv[index] = LLVector2(uv_center_rect.mRight, uv_center_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mRight, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mRight, uv_center_rect.mTop); - pos[index] = LLVector3(draw_outer_rect.mRight, draw_center_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_outer_rect.mRight, uv_outer_rect.mTop); - pos[index] = LLVector3(draw_outer_rect.mRight, draw_outer_rect.mTop, 0.f); - index++; - - uv[index] = LLVector2(uv_center_rect.mRight, uv_outer_rect.mTop); - pos[index] = LLVector3(draw_center_rect.mRight, draw_outer_rect.mTop, 0.f); - index++; - - gGL.vertexBatchPreTransformed(pos, uv, NUM_VERTICES); - } - gGL.end(); - - if (solid_color) - { - if (LLGLSLShader::sNoFixedFunction) - { - gUIProgram.bind(); - } - else - { - gGL.getTexUnit(0)->setTextureBlendType(LLTexUnit::TB_MULT); - } - } -} - -void gl_draw_rotated_image(S32 x, S32 y, F32 degrees, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect) -{ - gl_draw_scaled_rotated_image( x, y, image->getWidth(0), image->getHeight(0), degrees, image, color, uv_rect ); -} - -void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degrees, LLTexture* image, const LLColor4& color, const LLRectf& uv_rect) -{ - if (NULL == image) - { - llwarns << "image == NULL; aborting function" << llendl; - return; - } - - LLGLSUIDefault gls_ui; - - - gGL.getTexUnit(0)->bind(image, true); - - gGL.color4fv(color.mV); - - if (degrees == 0.f) - { - const S32 NUM_VERTICES = 4; // 9 quads - LLVector2 uv[NUM_VERTICES]; - LLVector3 pos[NUM_VERTICES]; - - gGL.begin(LLRender::QUADS); - { - LLVector3 ui_scale = gGL.getUIScale(); - LLVector3 ui_translation = gGL.getUITranslation(); - ui_translation.mV[VX] += x; - ui_translation.mV[VY] += y; - ui_translation.scaleVec(ui_scale); - S32 index = 0; - S32 scaled_width = llround(width * ui_scale.mV[VX]); - S32 scaled_height = llround(height * ui_scale.mV[VY]); - - uv[index] = LLVector2(uv_rect.mRight, uv_rect.mTop); - pos[index] = LLVector3(ui_translation.mV[VX] + scaled_width, ui_translation.mV[VY] + scaled_height, 0.f); - index++; - - uv[index] = LLVector2(uv_rect.mLeft, uv_rect.mTop); - pos[index] = LLVector3(ui_translation.mV[VX], ui_translation.mV[VY] + scaled_height, 0.f); - index++; - - uv[index] = LLVector2(uv_rect.mLeft, uv_rect.mBottom); - pos[index] = LLVector3(ui_translation.mV[VX], ui_translation.mV[VY], 0.f); - index++; - - uv[index] = LLVector2(uv_rect.mRight, uv_rect.mBottom); - pos[index] = LLVector3(ui_translation.mV[VX] + scaled_width, ui_translation.mV[VY], 0.f); - index++; - - gGL.vertexBatchPreTransformed(pos, uv, NUM_VERTICES); - } - gGL.end(); - } - else - { - gGL.pushUIMatrix(); - gGL.translateUI((F32)x, (F32)y, 0.f); - - F32 offset_x = F32(width/2); - F32 offset_y = F32(height/2); - - gGL.translateUI(offset_x, offset_y, 0.f); - - LLMatrix3 quat(0.f, 0.f, degrees*DEG_TO_RAD); - - gGL.getTexUnit(0)->bind(image, true); - - gGL.color4fv(color.mV); - - gGL.begin(LLRender::QUADS); - { - LLVector3 v; - - v = LLVector3(offset_x, offset_y, 0.f) * quat; - gGL.texCoord2f(uv_rect.mRight, uv_rect.mTop); - gGL.vertex2f(v.mV[0], v.mV[1] ); - - v = LLVector3(-offset_x, offset_y, 0.f) * quat; - gGL.texCoord2f(uv_rect.mLeft, uv_rect.mTop); - gGL.vertex2f(v.mV[0], v.mV[1] ); - - v = LLVector3(-offset_x, -offset_y, 0.f) * quat; - gGL.texCoord2f(uv_rect.mLeft, uv_rect.mBottom); - gGL.vertex2f(v.mV[0], v.mV[1] ); - - v = LLVector3(offset_x, -offset_y, 0.f) * quat; - gGL.texCoord2f(uv_rect.mRight, uv_rect.mBottom); - gGL.vertex2f(v.mV[0], v.mV[1] ); - } - gGL.end(); - gGL.popUIMatrix(); - } -} - - -void gl_stippled_line_3d( const LLVector3& start, const LLVector3& end, const LLColor4& color, F32 phase ) -{ - phase = fmod(phase, 1.f); - - S32 shift = S32(phase * 4.f) % 4; - - // Stippled line - LLGLEnable stipple(GL_LINE_STIPPLE); - - gGL.color4f(color.mV[VRED], color.mV[VGREEN], color.mV[VBLUE], color.mV[VALPHA]); - - gGL.flush(); - glLineWidth(2.5f); - - if (!LLGLSLShader::sNoFixedFunction) - { - glLineStipple(2, 0x3333 << shift); - } - - gGL.begin(LLRender::LINES); - { - gGL.vertex3fv( start.mV ); - gGL.vertex3fv( end.mV ); - } - gGL.end(); - - LLUI::setLineWidth(1.f); -} - -void gl_arc_2d(F32 center_x, F32 center_y, F32 radius, S32 steps, BOOL filled, F32 start_angle, F32 end_angle) -{ - if (end_angle < start_angle) - { - end_angle += F_TWO_PI; - } - - gGL.pushUIMatrix(); - { - gGL.translateUI(center_x, center_y, 0.f); - - // Inexact, but reasonably fast. - F32 delta = (end_angle - start_angle) / steps; - F32 sin_delta = sin( delta ); - F32 cos_delta = cos( delta ); - F32 x = cosf(start_angle) * radius; - F32 y = sinf(start_angle) * radius; - - if (filled) - { - gGL.begin(LLRender::TRIANGLE_FAN); - gGL.vertex2f(0.f, 0.f); - // make sure circle is complete - steps += 1; - } - else - { - gGL.begin(LLRender::LINE_STRIP); - } - - while( steps-- ) - { - // Successive rotations - gGL.vertex2f( x, y ); - F32 x_new = x * cos_delta - y * sin_delta; - y = x * sin_delta + y * cos_delta; - x = x_new; - } - gGL.end(); - } - gGL.popUIMatrix(); -} - -void gl_circle_2d(F32 center_x, F32 center_y, F32 radius, S32 steps, BOOL filled) -{ - gGL.pushUIMatrix(); - { - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - gGL.translateUI(center_x, center_y, 0.f); - - // Inexact, but reasonably fast. - F32 delta = F_TWO_PI / steps; - F32 sin_delta = sin( delta ); - F32 cos_delta = cos( delta ); - F32 x = radius; - F32 y = 0.f; - - if (filled) - { - gGL.begin(LLRender::TRIANGLE_FAN); - gGL.vertex2f(0.f, 0.f); - // make sure circle is complete - steps += 1; - } - else - { - gGL.begin(LLRender::LINE_LOOP); - } - - while( steps-- ) - { - // Successive rotations - gGL.vertex2f( x, y ); - F32 x_new = x * cos_delta - y * sin_delta; - y = x * sin_delta + y * cos_delta; - x = x_new; - } - gGL.end(); - } - gGL.popUIMatrix(); -} - -// Renders a ring with sides (tube shape) -void gl_deep_circle( F32 radius, F32 depth, S32 steps ) -{ - F32 x = radius; - F32 y = 0.f; - F32 angle_delta = F_TWO_PI / (F32)steps; - gGL.begin( LLRender::TRIANGLE_STRIP ); - { - S32 step = steps + 1; // An extra step to close the circle. - while( step-- ) - { - gGL.vertex3f( x, y, depth ); - gGL.vertex3f( x, y, 0.f ); - - F32 x_new = x * cosf(angle_delta) - y * sinf(angle_delta); - y = x * sinf(angle_delta) + y * cosf(angle_delta); - x = x_new; - } - } - gGL.end(); -} - -void gl_ring( F32 radius, F32 width, const LLColor4& center_color, const LLColor4& side_color, S32 steps, BOOL render_center ) -{ - gGL.pushUIMatrix(); - { - gGL.translateUI(0.f, 0.f, -width / 2); - if( render_center ) - { - gGL.color4fv(center_color.mV); - gGL.diffuseColor4fv(center_color.mV); - gl_deep_circle( radius, width, steps ); - } - else - { - gGL.diffuseColor4fv(side_color.mV); - gl_washer_2d(radius, radius - width, steps, side_color, side_color); - gGL.translateUI(0.f, 0.f, width); - gl_washer_2d(radius - width, radius, steps, side_color, side_color); - } - } - gGL.popUIMatrix(); -} - -// Draw gray and white checkerboard with black border -void gl_rect_2d_checkerboard(const LLRect& rect, GLfloat alpha) -{ - if (!LLGLSLShader::sNoFixedFunction) - { - // Initialize the first time this is called. - const S32 PIXELS = 32; - static GLubyte checkerboard[PIXELS * PIXELS]; - static BOOL first = TRUE; - if( first ) - { - for( S32 i = 0; i < PIXELS; i++ ) - { - for( S32 j = 0; j < PIXELS; j++ ) - { - checkerboard[i * PIXELS + j] = ((i & 1) ^ (j & 1)) * 0xFF; - } - } - first = FALSE; - } - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - // ...white squares - gGL.color4f( 1.f, 1.f, 1.f, alpha ); - gl_rect_2d(rect); - - // ...gray squares - gGL.color4f( .7f, .7f, .7f, alpha ); - gGL.flush(); - - glPolygonStipple( checkerboard ); - - LLGLEnable polygon_stipple(GL_POLYGON_STIPPLE); - gl_rect_2d(rect); - } - else - { //polygon stipple is deprecated, use "Checker" texture - LLPointer img = LLUI::getUIImage("Checker"); - gGL.getTexUnit(0)->bind(img->getImage()); - gGL.getTexUnit(0)->setTextureAddressMode(LLTexUnit::TAM_WRAP); - gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT); - - LLColor4 color(1.f, 1.f, 1.f, alpha); - LLRectf uv_rect(0, 0, rect.getWidth()/32.f, rect.getHeight()/32.f); - - gl_draw_scaled_image(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), - img->getImage(), color, uv_rect); - } - - gGL.flush(); -} - - -// Draws the area between two concentric circles, like -// a doughnut or washer. -void gl_washer_2d(F32 outer_radius, F32 inner_radius, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color) -{ - const F32 DELTA = F_TWO_PI / steps; - const F32 SIN_DELTA = sin( DELTA ); - const F32 COS_DELTA = cos( DELTA ); - - F32 x1 = outer_radius; - F32 y1 = 0.f; - F32 x2 = inner_radius; - F32 y2 = 0.f; - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - gGL.begin( LLRender::TRIANGLE_STRIP ); - { - steps += 1; // An extra step to close the circle. - while( steps-- ) - { - gGL.color4fv(outer_color.mV); - gGL.vertex2f( x1, y1 ); - gGL.color4fv(inner_color.mV); - gGL.vertex2f( x2, y2 ); - - F32 x1_new = x1 * COS_DELTA - y1 * SIN_DELTA; - y1 = x1 * SIN_DELTA + y1 * COS_DELTA; - x1 = x1_new; - - F32 x2_new = x2 * COS_DELTA - y2 * SIN_DELTA; - y2 = x2 * SIN_DELTA + y2 * COS_DELTA; - x2 = x2_new; - } - } - gGL.end(); -} - -// Draws the area between two concentric circles, like -// a doughnut or washer. -void gl_washer_segment_2d(F32 outer_radius, F32 inner_radius, F32 start_radians, F32 end_radians, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color) -{ - const F32 DELTA = (end_radians - start_radians) / steps; - const F32 SIN_DELTA = sin( DELTA ); - const F32 COS_DELTA = cos( DELTA ); - - F32 x1 = outer_radius * cos( start_radians ); - F32 y1 = outer_radius * sin( start_radians ); - F32 x2 = inner_radius * cos( start_radians ); - F32 y2 = inner_radius * sin( start_radians ); - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - gGL.begin( LLRender::TRIANGLE_STRIP ); - { - steps += 1; // An extra step to close the circle. - while( steps-- ) - { - gGL.color4fv(outer_color.mV); - gGL.vertex2f( x1, y1 ); - gGL.color4fv(inner_color.mV); - gGL.vertex2f( x2, y2 ); - - F32 x1_new = x1 * COS_DELTA - y1 * SIN_DELTA; - y1 = x1 * SIN_DELTA + y1 * COS_DELTA; - x1 = x1_new; - - F32 x2_new = x2 * COS_DELTA - y2 * SIN_DELTA; - y2 = x2 * SIN_DELTA + y2 * COS_DELTA; - x2 = x2_new; - } - } - gGL.end(); -} - -void gl_rect_2d_simple_tex( S32 width, S32 height ) -{ - gGL.begin( LLRender::QUADS ); - - gGL.texCoord2f(1.f, 1.f); - gGL.vertex2i(width, height); - - gGL.texCoord2f(0.f, 1.f); - gGL.vertex2i(0, height); - - gGL.texCoord2f(0.f, 0.f); - gGL.vertex2i(0, 0); - - gGL.texCoord2f(1.f, 0.f); - gGL.vertex2i(width, 0); - - gGL.end(); -} - -void gl_rect_2d_simple( S32 width, S32 height ) -{ - gGL.begin( LLRender::QUADS ); - gGL.vertex2i(width, height); - gGL.vertex2i(0, height); - gGL.vertex2i(0, 0); - gGL.vertex2i(width, 0); - gGL.end(); -} - -void gl_segmented_rect_2d_tex(const S32 left, - const S32 top, - const S32 right, - const S32 bottom, - const S32 texture_width, - const S32 texture_height, - const S32 border_size, - const U32 edges) -{ - S32 width = llabs(right - left); - S32 height = llabs(top - bottom); - - gGL.pushUIMatrix(); - - gGL.translateUI((F32)left, (F32)bottom, 0.f); - LLVector2 border_uv_scale((F32)border_size / (F32)texture_width, (F32)border_size / (F32)texture_height); - - if (border_uv_scale.mV[VX] > 0.5f) - { - border_uv_scale *= 0.5f / border_uv_scale.mV[VX]; - } - if (border_uv_scale.mV[VY] > 0.5f) - { - border_uv_scale *= 0.5f / border_uv_scale.mV[VY]; - } - - F32 border_scale = llmin((F32)border_size, (F32)width * 0.5f, (F32)height * 0.5f); - LLVector2 border_width_left = ((edges & (~(U32)ROUNDED_RECT_RIGHT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; - LLVector2 border_width_right = ((edges & (~(U32)ROUNDED_RECT_LEFT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; - LLVector2 border_height_bottom = ((edges & (~(U32)ROUNDED_RECT_TOP)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; - LLVector2 border_height_top = ((edges & (~(U32)ROUNDED_RECT_BOTTOM)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; - LLVector2 width_vec((F32)width, 0.f); - LLVector2 height_vec(0.f, (F32)height); - - gGL.begin(LLRender::QUADS); - { - // draw bottom left - gGL.texCoord2f(0.f, 0.f); - gGL.vertex2f(0.f, 0.f); - - gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv(border_width_left.mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + border_height_bottom).mV); - - gGL.texCoord2f(0.f, border_uv_scale.mV[VY]); - gGL.vertex2fv(border_height_bottom.mV); - - // draw bottom middle - gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv(border_width_left.mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv((width_vec - border_width_right).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + border_height_bottom).mV); - - // draw bottom right - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv((width_vec - border_width_right).mV); - - gGL.texCoord2f(1.f, 0.f); - gGL.vertex2fv(width_vec.mV); - - gGL.texCoord2f(1.f, border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec + border_height_bottom).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); - - // draw left - gGL.texCoord2f(0.f, border_uv_scale.mV[VY]); - gGL.vertex2fv(border_height_bottom.mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + border_height_bottom).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); - - gGL.texCoord2f(0.f, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((height_vec - border_height_top).mV); - - // draw middle - gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + border_height_bottom).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); - - // draw right - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + border_height_bottom).mV); - - gGL.texCoord2f(1.f, border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec + border_height_bottom).mV); - - gGL.texCoord2f(1.f, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); - - // draw top left - gGL.texCoord2f(0.f, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((height_vec - border_height_top).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f); - gGL.vertex2fv((border_width_left + height_vec).mV); - - gGL.texCoord2f(0.f, 1.f); - gGL.vertex2fv((height_vec).mV); - - // draw top middle - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((border_width_left + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f); - gGL.vertex2fv((width_vec - border_width_right + height_vec).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f); - gGL.vertex2fv((border_width_left + height_vec).mV); - - // draw top right - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec - border_width_right + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((width_vec + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f, 1.f); - gGL.vertex2fv((width_vec + height_vec).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f); - gGL.vertex2fv((width_vec - border_width_right + height_vec).mV); - } - gGL.end(); - - gGL.popUIMatrix(); -} - -//FIXME: rewrite to use scissor? -void gl_segmented_rect_2d_fragment_tex(const S32 left, - const S32 top, - const S32 right, - const S32 bottom, - const S32 texture_width, - const S32 texture_height, - const S32 border_size, - const F32 start_fragment, - const F32 end_fragment, - const U32 edges) -{ - S32 width = llabs(right - left); - S32 height = llabs(top - bottom); - - gGL.pushUIMatrix(); - - gGL.translateUI((F32)left, (F32)bottom, 0.f); - LLVector2 border_uv_scale((F32)border_size / (F32)texture_width, (F32)border_size / (F32)texture_height); - - if (border_uv_scale.mV[VX] > 0.5f) - { - border_uv_scale *= 0.5f / border_uv_scale.mV[VX]; - } - if (border_uv_scale.mV[VY] > 0.5f) - { - border_uv_scale *= 0.5f / border_uv_scale.mV[VY]; - } - - F32 border_scale = llmin((F32)border_size, (F32)width * 0.5f, (F32)height * 0.5f); - LLVector2 border_width_left = ((edges & (~(U32)ROUNDED_RECT_RIGHT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; - LLVector2 border_width_right = ((edges & (~(U32)ROUNDED_RECT_LEFT)) != 0) ? LLVector2(border_scale, 0.f) : LLVector2::zero; - LLVector2 border_height_bottom = ((edges & (~(U32)ROUNDED_RECT_TOP)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; - LLVector2 border_height_top = ((edges & (~(U32)ROUNDED_RECT_BOTTOM)) != 0) ? LLVector2(0.f, border_scale) : LLVector2::zero; - LLVector2 width_vec((F32)width, 0.f); - LLVector2 height_vec(0.f, (F32)height); - - F32 middle_start = border_scale / (F32)width; - F32 middle_end = 1.f - middle_start; - - F32 u_min; - F32 u_max; - LLVector2 x_min; - LLVector2 x_max; - - gGL.begin(LLRender::QUADS); - { - if (start_fragment < middle_start) - { - u_min = (start_fragment / middle_start) * border_uv_scale.mV[VX]; - u_max = llmin(end_fragment / middle_start, 1.f) * border_uv_scale.mV[VX]; - x_min = (start_fragment / middle_start) * border_width_left; - x_max = llmin(end_fragment / middle_start, 1.f) * border_width_left; - - // draw bottom left - gGL.texCoord2f(u_min, 0.f); - gGL.vertex2fv(x_min.mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv(x_max.mV); - - gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + border_height_bottom).mV); - - gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + border_height_bottom).mV); - - // draw left - gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + border_height_bottom).mV); - - gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + border_height_bottom).mV); - - gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + height_vec - border_height_top).mV); - - gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + height_vec - border_height_top).mV); - - // draw top left - gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + height_vec - border_height_top).mV); - - gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + height_vec - border_height_top).mV); - - gGL.texCoord2f(u_max, 1.f); - gGL.vertex2fv((x_max + height_vec).mV); - - gGL.texCoord2f(u_min, 1.f); - gGL.vertex2fv((x_min + height_vec).mV); - } - - if (end_fragment > middle_start || start_fragment < middle_end) - { - x_min = border_width_left + ((llclamp(start_fragment, middle_start, middle_end) - middle_start)) * width_vec; - x_max = border_width_left + ((llclamp(end_fragment, middle_start, middle_end) - middle_start)) * width_vec; - - // draw bottom middle - gGL.texCoord2f(border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv(x_min.mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 0.f); - gGL.vertex2fv((x_max).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + border_height_bottom).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + border_height_bottom).mV); - - // draw middle - gGL.texCoord2f(border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + border_height_bottom).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + border_height_bottom).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + height_vec - border_height_top).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + height_vec - border_height_top).mV); - - // draw top middle - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + height_vec - border_height_top).mV); - - gGL.texCoord2f(1.f - border_uv_scale.mV[VX], 1.f); - gGL.vertex2fv((x_max + height_vec).mV); - - gGL.texCoord2f(border_uv_scale.mV[VX], 1.f); - gGL.vertex2fv((x_min + height_vec).mV); - } - - if (end_fragment > middle_end) - { - u_min = (1.f - llmax(0.f, ((start_fragment - middle_end) / middle_start))) * border_uv_scale.mV[VX]; - u_max = (1.f - ((end_fragment - middle_end) / middle_start)) * border_uv_scale.mV[VX]; - x_min = width_vec - ((1.f - llmax(0.f, ((start_fragment - middle_end) / middle_start))) * border_width_right); - x_max = width_vec - ((1.f - ((end_fragment - middle_end) / middle_start)) * border_width_right); - - // draw bottom right - gGL.texCoord2f(u_min, 0.f); - gGL.vertex2fv((x_min).mV); - - gGL.texCoord2f(u_max, 0.f); - gGL.vertex2fv(x_max.mV); - - gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + border_height_bottom).mV); - - gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + border_height_bottom).mV); - - // draw right - gGL.texCoord2f(u_min, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + border_height_bottom).mV); - - gGL.texCoord2f(u_max, border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + border_height_bottom).mV); - - gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + height_vec - border_height_top).mV); - - gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + height_vec - border_height_top).mV); - - // draw top right - gGL.texCoord2f(u_min, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_min + height_vec - border_height_top).mV); - - gGL.texCoord2f(u_max, 1.f - border_uv_scale.mV[VY]); - gGL.vertex2fv((x_max + height_vec - border_height_top).mV); - - gGL.texCoord2f(u_max, 1.f); - gGL.vertex2fv((x_max + height_vec).mV); - - gGL.texCoord2f(u_min, 1.f); - gGL.vertex2fv((x_min + height_vec).mV); - } - } - gGL.end(); - - gGL.popUIMatrix(); -} - -void gl_segmented_rect_3d_tex(const LLVector2& border_scale, const LLVector3& border_width, - const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec, - const U32 edges) -{ - LLVector3 left_border_width = ((edges & (~(U32)ROUNDED_RECT_RIGHT)) != 0) ? border_width : LLVector3::zero; - LLVector3 right_border_width = ((edges & (~(U32)ROUNDED_RECT_LEFT)) != 0) ? border_width : LLVector3::zero; - - LLVector3 top_border_height = ((edges & (~(U32)ROUNDED_RECT_BOTTOM)) != 0) ? border_height : LLVector3::zero; - LLVector3 bottom_border_height = ((edges & (~(U32)ROUNDED_RECT_TOP)) != 0) ? border_height : LLVector3::zero; - - - gGL.begin(LLRender::QUADS); - { - // draw bottom left - gGL.texCoord2f(0.f, 0.f); - gGL.vertex3f(0.f, 0.f, 0.f); - - gGL.texCoord2f(border_scale.mV[VX], 0.f); - gGL.vertex3fv(left_border_width.mV); - - gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + bottom_border_height).mV); - - gGL.texCoord2f(0.f, border_scale.mV[VY]); - gGL.vertex3fv(bottom_border_height.mV); - - // draw bottom middle - gGL.texCoord2f(border_scale.mV[VX], 0.f); - gGL.vertex3fv(left_border_width.mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], 0.f); - gGL.vertex3fv((width_vec - right_border_width).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); - - gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + bottom_border_height).mV); - - // draw bottom right - gGL.texCoord2f(1.f - border_scale.mV[VX], 0.f); - gGL.vertex3fv((width_vec - right_border_width).mV); - - gGL.texCoord2f(1.f, 0.f); - gGL.vertex3fv(width_vec.mV); - - gGL.texCoord2f(1.f, border_scale.mV[VY]); - gGL.vertex3fv((width_vec + bottom_border_height).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); - - // draw left - gGL.texCoord2f(0.f, border_scale.mV[VY]); - gGL.vertex3fv(bottom_border_height.mV); - - gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + bottom_border_height).mV); - - gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); - - gGL.texCoord2f(0.f, 1.f - border_scale.mV[VY]); - gGL.vertex3fv((height_vec - top_border_height).mV); - - // draw middle - gGL.texCoord2f(border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + bottom_border_height).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); - - gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); - - // draw right - gGL.texCoord2f(1.f - border_scale.mV[VX], border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + bottom_border_height).mV); - - gGL.texCoord2f(1.f, border_scale.mV[VY]); - gGL.vertex3fv((width_vec + bottom_border_height).mV); - - gGL.texCoord2f(1.f, 1.f - border_scale.mV[VY]); - gGL.vertex3fv((width_vec + height_vec - top_border_height).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); - - // draw top left - gGL.texCoord2f(0.f, 1.f - border_scale.mV[VY]); - gGL.vertex3fv((height_vec - top_border_height).mV); - - gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); - - gGL.texCoord2f(border_scale.mV[VX], 1.f); - gGL.vertex3fv((left_border_width + height_vec).mV); - - gGL.texCoord2f(0.f, 1.f); - gGL.vertex3fv((height_vec).mV); - - // draw top middle - gGL.texCoord2f(border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((left_border_width + height_vec - top_border_height).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f); - gGL.vertex3fv((width_vec - right_border_width + height_vec).mV); - - gGL.texCoord2f(border_scale.mV[VX], 1.f); - gGL.vertex3fv((left_border_width + height_vec).mV); - - // draw top right - gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f - border_scale.mV[VY]); - gGL.vertex3fv((width_vec - right_border_width + height_vec - top_border_height).mV); - - gGL.texCoord2f(1.f, 1.f - border_scale.mV[VY]); - gGL.vertex3fv((width_vec + height_vec - top_border_height).mV); - - gGL.texCoord2f(1.f, 1.f); - gGL.vertex3fv((width_vec + height_vec).mV); - - gGL.texCoord2f(1.f - border_scale.mV[VX], 1.f); - gGL.vertex3fv((width_vec - right_border_width + height_vec).mV); - } - gGL.end(); - -} - -void gl_segmented_rect_3d_tex_top(const LLVector2& border_scale, const LLVector3& border_width, const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec) -{ - gl_segmented_rect_3d_tex(border_scale, border_width, border_height, width_vec, height_vec, ROUNDED_RECT_TOP); -} - void LLUI::initClass(const settings_map_t& settings, LLImageProviderInterface* image_provider, LLUIAudioCallback audio_callback, const LLVector2* scale_factor, const std::string& language) { + LLRender2D::initClass(image_provider, scale_factor); sSettingGroups = settings; if ((get_ptr_in_map(sSettingGroups, std::string("config")) == NULL) || @@ -1632,9 +151,7 @@ void LLUI::initClass(const settings_map_t& settings, llerrs << "Failure to initialize configuration groups" << llendl; } - sImageProvider = image_provider; sAudioCallback = audio_callback; - sGLScaleFactor = (scale_factor == NULL) ? LLVector2(1.f, 1.f) : *scale_factor; sWindow = NULL; // set later in startup LLFontGL::sShadowColor = LLUIColorTable::instance().getColor("ColorDropShadow"); @@ -1668,10 +185,7 @@ void LLUI::initClass(const settings_map_t& settings, void LLUI::cleanupClass() { - if(sImageProvider) - { - sImageProvider->cleanUp(); -} + LLRender2D::cleanupClass(); } void LLUI::setPopupFuncs(const add_popup_t& add_popup, const remove_popup_t& remove_popup, const clear_popups_t& clear_popups) @@ -1695,60 +209,12 @@ void LLUI::dirtyRect(LLRect rect) } } - -//static -void LLUI::translate(F32 x, F32 y, F32 z) -{ - gGL.translateUI(x,y,z); - LLFontGL::sCurOrigin.mX += (S32) x; - LLFontGL::sCurOrigin.mY += (S32) y; - LLFontGL::sCurDepth += z; -} - -//static -void LLUI::pushMatrix() -{ - gGL.pushUIMatrix(); - LLFontGL::sOriginStack.push_back(std::make_pair(LLFontGL::sCurOrigin, LLFontGL::sCurDepth)); -} - -//static -void LLUI::popMatrix() -{ - gGL.popUIMatrix(); - LLFontGL::sCurOrigin = LLFontGL::sOriginStack.back().first; - LLFontGL::sCurDepth = LLFontGL::sOriginStack.back().second; - LLFontGL::sOriginStack.pop_back(); -} - -//static -void LLUI::loadIdentity() -{ - gGL.loadUIIdentity(); - LLFontGL::sCurOrigin.mX = 0; - LLFontGL::sCurOrigin.mY = 0; - LLFontGL::sCurDepth = 0.f; -} - -//static -void LLUI::setScaleFactor(const LLVector2 &scale_factor) -{ - sGLScaleFactor = scale_factor; -} - -//static -void LLUI::setLineWidth(F32 width) -{ - gGL.flush(); - glLineWidth(width * lerp(sGLScaleFactor.mV[VX], sGLScaleFactor.mV[VY], 0.5f)); -} - //static void LLUI::setMousePositionScreen(S32 x, S32 y) { S32 screen_x, screen_y; - screen_x = llround((F32)x * sGLScaleFactor.mV[VX]); - screen_y = llround((F32)y * sGLScaleFactor.mV[VY]); + screen_x = llround((F32)x * getScaleFactor().mV[VX]); + screen_y = llround((F32)y * getScaleFactor().mV[VY]); LLView::getWindow()->setCursorPosition(LLCoordGL(screen_x, screen_y).convert()); } @@ -1759,8 +225,8 @@ void LLUI::getMousePositionScreen(S32 *x, S32 *y) LLCoordWindow cursor_pos_window; getWindow()->getCursorPosition(&cursor_pos_window); LLCoordGL cursor_pos_gl(cursor_pos_window.convert()); - *x = llround((F32)cursor_pos_gl.mX / sGLScaleFactor.mV[VX]); - *y = llround((F32)cursor_pos_gl.mY / sGLScaleFactor.mV[VX]); + *x = llround((F32)cursor_pos_gl.mX / getScaleFactor().mV[VX]); + *y = llround((F32)cursor_pos_gl.mY / getScaleFactor().mV[VX]); } //static @@ -1925,21 +391,21 @@ LLVector2 LLUI::getWindowSize() LLCoordWindow window_rect; sWindow->getSize(&window_rect); - return LLVector2(window_rect.mX / sGLScaleFactor.mV[VX], window_rect.mY / sGLScaleFactor.mV[VY]); + return LLVector2(window_rect.mX / getScaleFactor().mV[VX], window_rect.mY / getScaleFactor().mV[VY]); } //static void LLUI::screenPointToGL(S32 screen_x, S32 screen_y, S32 *gl_x, S32 *gl_y) { - *gl_x = llround((F32)screen_x * sGLScaleFactor.mV[VX]); - *gl_y = llround((F32)screen_y * sGLScaleFactor.mV[VY]); + *gl_x = llround((F32)screen_x * getScaleFactor().mV[VX]); + *gl_y = llround((F32)screen_y * getScaleFactor().mV[VY]); } //static void LLUI::glPointToScreen(S32 gl_x, S32 gl_y, S32 *screen_x, S32 *screen_y) { - *screen_x = llround((F32)gl_x / sGLScaleFactor.mV[VX]); - *screen_y = llround((F32)gl_y / sGLScaleFactor.mV[VY]); + *screen_x = llround((F32)gl_x / getScaleFactor().mV[VX]); + *screen_y = llround((F32)gl_y / getScaleFactor().mV[VY]); } //static @@ -1956,27 +422,6 @@ void LLUI::glRectToScreen(const LLRect& gl, LLRect *screen) glPointToScreen(gl.mRight, gl.mBottom, &screen->mRight, &screen->mBottom); } -//static -LLPointer LLUI::getUIImageByID(const LLUUID& image_id, S32 priority) -{ - if (sImageProvider) - { - return sImageProvider->getUIImageByID(image_id, priority); - } - else - { - return NULL; - } -} - -//static -LLPointer LLUI::getUIImage(const std::string& name, S32 priority) -{ - if (!name.empty() && sImageProvider) - return sImageProvider->getUIImage(name, priority); - else - return NULL; -} LLControlGroup& LLUI::getControlControlGroup (const std::string& controlname) { diff --git a/indra/llui/llui.h b/indra/llui/llui.h index 28e84fa444..a38ae9a560 100644 --- a/indra/llui/llui.h +++ b/indra/llui/llui.h @@ -1,6 +1,6 @@ /** * @file llui.h - * @brief GL function declarations and other general static UI services. + * @brief General static UI services. * * $LicenseInfo:firstyear=2001&license=viewerlgpl$ * Second Life Viewer Source Code @@ -24,122 +24,37 @@ * $/LicenseInfo$ */ -// All immediate-mode gl drawing should happen here. #ifndef LL_LLUI_H #define LL_LLUI_H -#include "llpointer.h" // LLPointer<> #include "llrect.h" #include "llcontrol.h" #include "llcoord.h" -#include "llglslshader.h" +#include "v2math.h" #include "llinitparam.h" #include "llregistry.h" +#include "llrender2dutils.h" +#include "llpointer.h" #include "lluicolor.h" #include "lluicolortable.h" +#include "lluiimage.h" #include #include "lllazyvalue.h" #include "llframetimer.h" #include -// LLUIFactory -#include "llsd.h" - // for initparam specialization #include "llfontgl.h" -class LLColor4; -class LLVector3; -class LLVector2; -class LLUIImage; class LLUUID; class LLWindow; class LLView; class LLHelp; -// UI colors -extern const LLColor4 UI_VERTEX_COLOR; void make_ui_sound(const char* name); -BOOL ui_point_in_rect(S32 x, S32 y, S32 left, S32 top, S32 right, S32 bottom); -void gl_state_for_2d(S32 width, S32 height); - -void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2); -void gl_line_2d(S32 x1, S32 y1, S32 x2, S32 y2, const LLColor4 &color ); -void gl_triangle_2d(S32 x1, S32 y1, S32 x2, S32 y2, S32 x3, S32 y3, const LLColor4& color, BOOL filled); -void gl_rect_2d_simple( S32 width, S32 height ); - -void gl_draw_x(const LLRect& rect, const LLColor4& color); - -void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, BOOL filled = TRUE ); -void gl_rect_2d(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, BOOL filled = TRUE ); -void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &color, S32 pixel_offset = 0, BOOL filled = TRUE ); -void gl_rect_2d_offset_local( S32 left, S32 top, S32 right, S32 bottom, S32 pixel_offset = 0, BOOL filled = TRUE ); -void gl_rect_2d(const LLRect& rect, BOOL filled = TRUE ); -void gl_rect_2d(const LLRect& rect, const LLColor4& color, BOOL filled = TRUE ); -void gl_rect_2d_checkerboard(const LLRect& rect, GLfloat alpha = 1.0f); - -void gl_drop_shadow(S32 left, S32 top, S32 right, S32 bottom, const LLColor4 &start_color, S32 lines); - -void gl_circle_2d(F32 x, F32 y, F32 radius, S32 steps, BOOL filled); -void gl_arc_2d(F32 center_x, F32 center_y, F32 radius, S32 steps, BOOL filled, F32 start_angle, F32 end_angle); -void gl_deep_circle( F32 radius, F32 depth ); -void gl_ring( F32 radius, F32 width, const LLColor4& center_color, const LLColor4& side_color, S32 steps, BOOL render_center ); -void gl_corners_2d(S32 left, S32 top, S32 right, S32 bottom, S32 length, F32 max_frac); -void gl_washer_2d(F32 outer_radius, F32 inner_radius, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color); -void gl_washer_segment_2d(F32 outer_radius, F32 inner_radius, F32 start_radians, F32 end_radians, S32 steps, const LLColor4& inner_color, const LLColor4& outer_color); - -void gl_draw_image(S32 x, S32 y, LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); -void gl_draw_scaled_image(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); -void gl_draw_rotated_image(S32 x, S32 y, F32 degrees, LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); -void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degrees,LLTexture* image, const LLColor4& color = UI_VERTEX_COLOR, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); -void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 border_width, S32 border_height, S32 width, S32 height, LLTexture* image, const LLColor4 &color, BOOL solid_color = FALSE, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); -void gl_draw_scaled_image_with_border(S32 x, S32 y, S32 width, S32 height, LLTexture* image, const LLColor4 &color, BOOL solid_color = FALSE, const LLRectf& uv_rect = LLRectf(0.f, 1.f, 1.f, 0.f), const LLRectf& scale_rect = LLRectf(0.f, 1.f, 1.f, 0.f)); - -void gl_stippled_line_3d( const LLVector3& start, const LLVector3& end, const LLColor4& color, F32 phase = 0.f ); - -void gl_rect_2d_simple_tex( S32 width, S32 height ); - -// segmented rectangles - -/* - TL |______TOP_________| TR - /| |\ - _/_|__________________|_\_ - L| | MIDDLE | |R - _|_|__________________|_|_ - \ | BOTTOM | / - BL\|__________________|/ BR - | | -*/ - -typedef enum e_rounded_edge -{ - ROUNDED_RECT_LEFT = 0x1, - ROUNDED_RECT_TOP = 0x2, - ROUNDED_RECT_RIGHT = 0x4, - ROUNDED_RECT_BOTTOM = 0x8, - ROUNDED_RECT_ALL = 0xf -}ERoundedEdge; - - -void gl_segmented_rect_2d_tex(const S32 left, const S32 top, const S32 right, const S32 bottom, const S32 texture_width, const S32 texture_height, const S32 border_size, const U32 edges = ROUNDED_RECT_ALL); -void gl_segmented_rect_2d_fragment_tex(const S32 left, const S32 top, const S32 right, const S32 bottom, const S32 texture_width, const S32 texture_height, const S32 border_size, const F32 start_fragment, const F32 end_fragment, const U32 edges = ROUNDED_RECT_ALL); -void gl_segmented_rect_3d_tex(const LLVector2& border_scale, const LLVector3& border_width, const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec, U32 edges = ROUNDED_RECT_ALL); -void gl_segmented_rect_3d_tex_top(const LLVector2& border_scale, const LLVector3& border_width, const LLVector3& border_height, const LLVector3& width_vec, const LLVector3& height_vec); - -inline void gl_rect_2d( const LLRect& rect, BOOL filled ) -{ - gl_rect_2d( rect.mLeft, rect.mTop, rect.mRight, rect.mBottom, filled ); -} - -inline void gl_rect_2d_offset_local( const LLRect& rect, S32 pixel_offset, BOOL filled) -{ - gl_rect_2d_offset_local( rect.mLeft, rect.mTop, rect.mRight, rect.mBottom, pixel_offset, filled ); -} - class LLImageProviderInterface; typedef void (*LLUIAudioCallback)(const LLUUID& uuid); @@ -280,10 +195,10 @@ public: static void cleanupClass(); static void setPopupFuncs(const add_popup_t& add_popup, const remove_popup_t&, const clear_popups_t& ); - static void pushMatrix(); - static void popMatrix(); - static void loadIdentity(); - static void translate(F32 x, F32 y, F32 z = 0.0f); + static void pushMatrix() { LLRender2D::pushMatrix(); } + static void popMatrix() { LLRender2D::popMatrix(); } + static void loadIdentity() { LLRender2D::loadIdentity(); } + static void translate(F32 x, F32 y, F32 z = 0.0f) { LLRender2D::translate(x, y, z); } static LLRect sDirtyRect; static BOOL sDirty; @@ -333,10 +248,13 @@ public: static void getMousePositionScreen(S32 *x, S32 *y); static void setMousePositionLocal(const LLView* viewp, S32 x, S32 y); static void getMousePositionLocal(const LLView* viewp, S32 *x, S32 *y); - static void setScaleFactor(const LLVector2& scale_factor); - static void setLineWidth(F32 width); - static LLPointer getUIImageByID(const LLUUID& image_id, S32 priority = 0); - static LLPointer getUIImage(const std::string& name, S32 priority = 0); + static LLVector2& getScaleFactor() { return LLRender2D::sGLScaleFactor; } + static void setScaleFactor(const LLVector2& scale_factor) { LLRender2D::setScaleFactor(scale_factor); } + static void setLineWidth(F32 width) { LLRender2D::setLineWidth(width); } + static LLPointer getUIImageByID(const LLUUID& image_id, S32 priority = 0) + { return LLRender2D::getUIImageByID(image_id, priority); } + static LLPointer getUIImage(const std::string& name, S32 priority = 0) + { return LLRender2D::getUIImage(name, priority); } static LLVector2 getWindowSize(); static void screenPointToGL(S32 screen_x, S32 screen_y, S32 *gl_x, S32 *gl_y); static void glPointToScreen(S32 gl_x, S32 gl_y, S32 *screen_x, S32 *screen_y); @@ -365,12 +283,10 @@ public: // static settings_map_t sSettingGroups; static LLUIAudioCallback sAudioCallback; - static LLVector2 sGLScaleFactor; static LLWindow* sWindow; static LLView* sRootView; static LLHelp* sHelpImpl; private: - static LLImageProviderInterface* sImageProvider; static std::vector sXUIPaths; static LLFrameTimer sMouseIdleTimer; static add_popup_t sAddPopupFunc; @@ -381,18 +297,6 @@ private: // Moved LLLocalClipRect to lllocalcliprect.h -//RN: maybe this needs to moved elsewhere? -class LLImageProviderInterface -{ -protected: - LLImageProviderInterface() {}; - virtual ~LLImageProviderInterface() {}; -public: - virtual LLPointer getUIImage(const std::string& name, S32 priority) = 0; - virtual LLPointer getUIImageByID(const LLUUID& id, S32 priority) = 0; - virtual void cleanUp() = 0; -}; - class LLCallbackRegistry { public: @@ -603,7 +507,4 @@ namespace LLInitParam }; } -extern LLGLSLShader gSolidColorProgram; -extern LLGLSLShader gUIProgram; - #endif diff --git a/indra/llui/lluiimage.cpp b/indra/llui/lluiimage.cpp deleted file mode 100644 index 1d9ce29ba9..0000000000 --- a/indra/llui/lluiimage.cpp +++ /dev/null @@ -1,199 +0,0 @@ -/** - * @file lluiimage.cpp - * @brief UI implementation - * - * $LicenseInfo:firstyear=2007&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -// Utilities functions the user interface needs - -//#include "llviewerprecompiledheaders.h" -#include "linden_common.h" - -// Project includes -#include "lluiimage.h" -#include "llui.h" - -LLUIImage::LLUIImage(const std::string& name, LLPointer image) -: mName(name), - mImage(image), - mScaleRegion(0.f, 1.f, 1.f, 0.f), - mClipRegion(0.f, 1.f, 1.f, 0.f), - mUniformScaling(TRUE), - mNoClip(TRUE), - mImageLoaded(NULL) -{ -} - -LLUIImage::~LLUIImage() -{ - delete mImageLoaded; -} - -void LLUIImage::setClipRegion(const LLRectf& region) -{ - mClipRegion = region; - mNoClip = mClipRegion.mLeft == 0.f - && mClipRegion.mRight == 1.f - && mClipRegion.mBottom == 0.f - && mClipRegion.mTop == 1.f; -} - -void LLUIImage::setScaleRegion(const LLRectf& region) -{ - mScaleRegion = region; - mUniformScaling = mScaleRegion.mLeft == 0.f - && mScaleRegion.mRight == 1.f - && mScaleRegion.mBottom == 0.f - && mScaleRegion.mTop == 1.f; -} - -//TODO: move drawing implementation inside class -void LLUIImage::draw(S32 x, S32 y, const LLColor4& color) const -{ - gl_draw_scaled_image(x, y, getWidth(), getHeight(), mImage, color, mClipRegion); -} - -void LLUIImage::draw(S32 x, S32 y, S32 width, S32 height, const LLColor4& color) const -{ - if (mUniformScaling) - { - gl_draw_scaled_image(x, y, width, height, mImage, color, mClipRegion); - } - else - { - gl_draw_scaled_image_with_border( - x, y, - width, height, - mImage, - color, - FALSE, - mClipRegion, - mScaleRegion); - } -} - -void LLUIImage::drawSolid(S32 x, S32 y, S32 width, S32 height, const LLColor4& color) const -{ - gl_draw_scaled_image_with_border( - x, y, - width, height, - mImage, - color, - TRUE, - mClipRegion, - mScaleRegion); -} - -void LLUIImage::drawBorder(S32 x, S32 y, S32 width, S32 height, const LLColor4& color, S32 border_width) const -{ - LLRect border_rect; - border_rect.setOriginAndSize(x, y, width, height); - border_rect.stretch(border_width, border_width); - drawSolid(border_rect, color); -} - -S32 LLUIImage::getWidth() const -{ - // return clipped dimensions of actual image area - return llround((F32)mImage->getWidth(0) * mClipRegion.getWidth()); -} - -S32 LLUIImage::getHeight() const -{ - // return clipped dimensions of actual image area - return llround((F32)mImage->getHeight(0) * mClipRegion.getHeight()); -} - -S32 LLUIImage::getTextureWidth() const -{ - return mImage->getWidth(0); -} - -S32 LLUIImage::getTextureHeight() const -{ - return mImage->getHeight(0); -} - -boost::signals2::connection LLUIImage::addLoadedCallback( const image_loaded_signal_t::slot_type& cb ) -{ - if (!mImageLoaded) - { - mImageLoaded = new image_loaded_signal_t(); - } - return mImageLoaded->connect(cb); -} - - -void LLUIImage::onImageLoaded() -{ - if (mImageLoaded) - { - (*mImageLoaded)(); - } -} - - -namespace LLInitParam -{ - void ParamValue >::updateValueFromBlock() - { - // The keyword "none" is specifically requesting a null image - // do not default to current value. Used to overwrite template images. - if (name() == "none") - { - updateValue(NULL); - return; - } - - LLUIImage* imagep = LLUI::getUIImage(name()); - if (imagep) - { - updateValue(imagep); - } - } - - void ParamValue >::updateBlockFromValue(bool make_block_authoritative) - { - if (getValue() == NULL) - { - name.set("none", make_block_authoritative); - } - else - { - name.set(getValue()->getName(), make_block_authoritative); - } - } - - - bool ParamCompare::equals( - LLUIImage* const &a, - LLUIImage* const &b) - { - // force all LLUIImages for XML UI export to be "non-default" - if (!a && !b) - return false; - else - return (a == b); - } -} - diff --git a/indra/llui/lluiimage.h b/indra/llui/lluiimage.h deleted file mode 100644 index f07e8fa746..0000000000 --- a/indra/llui/lluiimage.h +++ /dev/null @@ -1,124 +0,0 @@ -/** - * @file lluiimage.h - * @brief wrapper for images used in the UI that handles smart scaling, etc. - * - * $LicenseInfo:firstyear=2007&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#ifndef LL_LLUIIMAGE_H -#define LL_LLUIIMAGE_H - -#include "v4color.h" -#include "llpointer.h" -#include "llrefcount.h" -#include "llrefcount.h" -#include "llrect.h" -#include -#include -#include "llinitparam.h" -#include "lltexture.h" - -extern const LLColor4 UI_VERTEX_COLOR; - -class LLUIImage : public LLRefCount -{ -public: - typedef boost::signals2::signal image_loaded_signal_t; - - LLUIImage(const std::string& name, LLPointer image); - virtual ~LLUIImage(); - - void setClipRegion(const LLRectf& region); - void setScaleRegion(const LLRectf& region); - - LLPointer getImage() { return mImage; } - const LLPointer& getImage() const { return mImage; } - - void draw(S32 x, S32 y, S32 width, S32 height, const LLColor4& color = UI_VERTEX_COLOR) const; - void draw(S32 x, S32 y, const LLColor4& color = UI_VERTEX_COLOR) const; - void draw(const LLRect& rect, const LLColor4& color = UI_VERTEX_COLOR) const { draw(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), color); } - - void drawSolid(S32 x, S32 y, S32 width, S32 height, const LLColor4& color) const; - void drawSolid(const LLRect& rect, const LLColor4& color) const { drawSolid(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), color); } - void drawSolid(S32 x, S32 y, const LLColor4& color) const { drawSolid(x, y, getWidth(), getHeight(), color); } - - void drawBorder(S32 x, S32 y, S32 width, S32 height, const LLColor4& color, S32 border_width) const; - void drawBorder(const LLRect& rect, const LLColor4& color, S32 border_width) const { drawBorder(rect.mLeft, rect.mBottom, rect.getWidth(), rect.getHeight(), color, border_width); } - void drawBorder(S32 x, S32 y, const LLColor4& color, S32 border_width) const { drawBorder(x, y, getWidth(), getHeight(), color, border_width); } - - const std::string& getName() const { return mName; } - - virtual S32 getWidth() const; - virtual S32 getHeight() const; - - // returns dimensions of underlying textures, which might not be equal to ui image portion - S32 getTextureWidth() const; - S32 getTextureHeight() const; - - boost::signals2::connection addLoadedCallback( const image_loaded_signal_t::slot_type& cb ); - - void onImageLoaded(); - -protected: - image_loaded_signal_t* mImageLoaded; - - std::string mName; - LLRectf mScaleRegion; - LLRectf mClipRegion; - LLPointer mImage; - BOOL mUniformScaling; - BOOL mNoClip; -}; - -namespace LLInitParam -{ - template<> - class ParamValue > - : public CustomParamValue - { - typedef boost::add_reference::type>::type T_const_ref; - typedef CustomParamValue super_t; - public: - Optional name; - - ParamValue(LLUIImage* const& image) - : super_t(image) - { - updateBlockFromValue(false); - addSynonym(name, "name"); - } - - void updateValueFromBlock(); - void updateBlockFromValue(bool make_block_authoritative); - }; - - // Need custom comparison function for our test app, which only loads - // LLUIImage* as NULL. - template<> - struct ParamCompare - { - static bool equals(LLUIImage* const &a, LLUIImage* const &b); - }; -} - -typedef LLPointer LLUIImagePtr; -#endif diff --git a/indra/llui/tests/llurlentry_test.cpp b/indra/llui/tests/llurlentry_test.cpp index 8f0a48018f..6c51024d2c 100644 --- a/indra/llui/tests/llurlentry_test.cpp +++ b/indra/llui/tests/llurlentry_test.cpp @@ -31,7 +31,7 @@ #include "llurlentry_stub.cpp" #include "lltut.h" #include "../lluicolortable.h" -#include "../lluiimage.h" +#include "lluiimage.h" #include diff --git a/indra/llui/tests/llurlmatch_test.cpp b/indra/llui/tests/llurlmatch_test.cpp index 963473c92a..88a2cfb1e0 100644 --- a/indra/llui/tests/llurlmatch_test.cpp +++ b/indra/llui/tests/llurlmatch_test.cpp @@ -28,7 +28,7 @@ #include "linden_common.h" #include "../llurlmatch.h" -#include "../lluiimage.h" +#include "lluiimage.h" #include "lltut.h" // link seams diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 21b1512e58..a17a3b11ec 100755 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -304,6 +304,7 @@ set(viewer_SOURCE_FILES llinventorybridge.cpp llinventoryfilter.cpp llinventoryfunctions.cpp + llinventoryicon.cpp llinventoryitemslist.cpp llinventorylistitem.cpp llinventorymodel.cpp @@ -872,6 +873,7 @@ set(viewer_HEADER_FILES llinventorybridge.h llinventoryfilter.h llinventoryfunctions.h + llinventoryicon.h llinventoryitemslist.h llinventorylistitem.h llinventorymodel.h diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 6ca77ba4dd..fbf15ff5ce 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -771,7 +771,7 @@ bool LLAppViewer::init() LLUI::initClass(settings_map, LLUIImageList::getInstance(), ui_audio_callback, - &LLUI::sGLScaleFactor); + &LLUI::getScaleFactor()); LL_INFOS("InitInfo") << "UI initialized." << LL_ENDL ; // Setup paths and LLTrans after LLUI::initClass has been called. diff --git a/indra/newview/llfloaterbuycontents.cpp b/indra/newview/llfloaterbuycontents.cpp index 809d344d01..df802f0a0e 100644 --- a/indra/newview/llfloaterbuycontents.cpp +++ b/indra/newview/llfloaterbuycontents.cpp @@ -40,6 +40,7 @@ #include "llcheckboxctrl.h" #include "llinventorydefines.h" #include "llinventoryfunctions.h" +#include "llinventoryicon.h" #include "llinventorymodel.h" // for gInventory #include "llfirstuse.h" #include "llfloaterreg.h" diff --git a/indra/newview/llglsandbox.cpp b/indra/newview/llglsandbox.cpp index 1208c9378e..60fa53f491 100644 --- a/indra/newview/llglsandbox.cpp +++ b/indra/newview/llglsandbox.cpp @@ -79,10 +79,10 @@ void LLToolSelectRect::handleRectangleSelection(S32 x, S32 y, MASK mask) S32 top = llmax(y, mDragStartY); S32 bottom =llmin(y, mDragStartY); - left = llround((F32) left * LLUI::sGLScaleFactor.mV[VX]); - right = llround((F32) right * LLUI::sGLScaleFactor.mV[VX]); - top = llround((F32) top * LLUI::sGLScaleFactor.mV[VY]); - bottom = llround((F32) bottom * LLUI::sGLScaleFactor.mV[VY]); + left = llround((F32) left * LLUI::getScaleFactor().mV[VX]); + right = llround((F32) right * LLUI::getScaleFactor().mV[VX]); + top = llround((F32) top * LLUI::getScaleFactor().mV[VY]); + bottom = llround((F32) bottom * LLUI::getScaleFactor().mV[VY]); F32 old_far_plane = LLViewerCamera::getInstance()->getFar(); F32 old_near_plane = LLViewerCamera::getInstance()->getNear(); diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index dc6147898a..4834d8dd70 100755 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -50,6 +50,7 @@ #include "llclipboard.h" #include "llinventorydefines.h" #include "llinventoryfunctions.h" +#include "llinventoryicon.h" #include "llinventorymodel.h" #include "llinventorymodelbackgroundfetch.h" #include "llinventorypanel.h" @@ -1510,7 +1511,7 @@ LLUIImagePtr LLItemBridge::getIcon() const mIsLink); } - return LLInventoryIcon::getIcon(LLInventoryIcon::ICONNAME_OBJECT); + return LLInventoryIcon::getIcon(LLInventoryType::ICONNAME_OBJECT); } PermissionMask LLItemBridge::getPermissionMask() const diff --git a/indra/newview/llinventoryicon.cpp b/indra/newview/llinventoryicon.cpp new file mode 100644 index 0000000000..14efc25fb9 --- /dev/null +++ b/indra/newview/llinventoryicon.cpp @@ -0,0 +1,183 @@ +/** + * @file llinventoryicon.cpp + * @brief Implementation of the inventory icon. + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#include "linden_common.h" +#include "llinventoryicon.h" + +#include "lldictionary.h" +#include "llinventorydefines.h" +#include "llui.h" +#include "llwearabletype.h" + +struct IconEntry : public LLDictionaryEntry +{ + IconEntry(const std::string &item_name) + : + LLDictionaryEntry(item_name) + {} +}; + +class LLIconDictionary : public LLSingleton, + public LLDictionary +{ +public: + LLIconDictionary(); +}; + +LLIconDictionary::LLIconDictionary() +{ + addEntry(LLInventoryType::ICONNAME_TEXTURE, new IconEntry("Inv_Texture")); + addEntry(LLInventoryType::ICONNAME_SOUND, new IconEntry("Inv_Sound")); + addEntry(LLInventoryType::ICONNAME_CALLINGCARD_ONLINE, new IconEntry("Inv_CallingCard")); + addEntry(LLInventoryType::ICONNAME_CALLINGCARD_OFFLINE, new IconEntry("Inv_CallingCard")); + addEntry(LLInventoryType::ICONNAME_LANDMARK, new IconEntry("Inv_Landmark")); + addEntry(LLInventoryType::ICONNAME_LANDMARK_VISITED, new IconEntry("Inv_Landmark")); + addEntry(LLInventoryType::ICONNAME_SCRIPT, new IconEntry("Inv_Script")); + addEntry(LLInventoryType::ICONNAME_CLOTHING, new IconEntry("Inv_Clothing")); + addEntry(LLInventoryType::ICONNAME_OBJECT, new IconEntry("Inv_Object")); + addEntry(LLInventoryType::ICONNAME_OBJECT_MULTI, new IconEntry("Inv_Object_Multi")); + addEntry(LLInventoryType::ICONNAME_NOTECARD, new IconEntry("Inv_Notecard")); + addEntry(LLInventoryType::ICONNAME_BODYPART, new IconEntry("Inv_Skin")); + addEntry(LLInventoryType::ICONNAME_SNAPSHOT, new IconEntry("Inv_Snapshot")); + + addEntry(LLInventoryType::ICONNAME_BODYPART_SHAPE, new IconEntry("Inv_BodyShape")); + addEntry(LLInventoryType::ICONNAME_BODYPART_SKIN, new IconEntry("Inv_Skin")); + addEntry(LLInventoryType::ICONNAME_BODYPART_HAIR, new IconEntry("Inv_Hair")); + addEntry(LLInventoryType::ICONNAME_BODYPART_EYES, new IconEntry("Inv_Eye")); + + addEntry(LLInventoryType::ICONNAME_CLOTHING_SHIRT, new IconEntry("Inv_Shirt")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_PANTS, new IconEntry("Inv_Pants")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_SHOES, new IconEntry("Inv_Shoe")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_SOCKS, new IconEntry("Inv_Socks")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_JACKET, new IconEntry("Inv_Jacket")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_GLOVES, new IconEntry("Inv_Gloves")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_UNDERSHIRT, new IconEntry("Inv_Undershirt")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_UNDERPANTS, new IconEntry("Inv_Underpants")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_SKIRT, new IconEntry("Inv_Skirt")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_ALPHA, new IconEntry("Inv_Alpha")); + addEntry(LLInventoryType::ICONNAME_CLOTHING_TATTOO, new IconEntry("Inv_Tattoo")); + addEntry(LLInventoryType::ICONNAME_ANIMATION, new IconEntry("Inv_Animation")); + addEntry(LLInventoryType::ICONNAME_GESTURE, new IconEntry("Inv_Gesture")); + + addEntry(LLInventoryType::ICONNAME_CLOTHING_PHYSICS, new IconEntry("Inv_Physics")); + + addEntry(LLInventoryType::ICONNAME_LINKITEM, new IconEntry("Inv_LinkItem")); + addEntry(LLInventoryType::ICONNAME_LINKFOLDER, new IconEntry("Inv_LinkFolder")); + addEntry(LLInventoryType::ICONNAME_MESH, new IconEntry("Inv_Mesh")); + + addEntry(LLInventoryType::ICONNAME_INVALID, new IconEntry("Inv_Invalid")); + + addEntry(LLInventoryType::ICONNAME_NONE, new IconEntry("NONE")); +} + +LLUIImagePtr LLInventoryIcon::getIcon(LLAssetType::EType asset_type, + LLInventoryType::EType inventory_type, + U32 misc_flag, + BOOL item_is_multi) +{ + const std::string& icon_name = getIconName(asset_type, inventory_type, misc_flag, item_is_multi); + return LLUI::getUIImage(icon_name); +} + +LLUIImagePtr LLInventoryIcon::getIcon(LLInventoryType::EIconName idx) +{ + return LLUI::getUIImage(getIconName(idx)); +} + +const std::string& LLInventoryIcon::getIconName(LLAssetType::EType asset_type, + LLInventoryType::EType inventory_type, + U32 misc_flag, + BOOL item_is_multi) +{ + LLInventoryType::EIconName idx = LLInventoryType::ICONNAME_OBJECT; + if (item_is_multi) + { + idx = LLInventoryType::ICONNAME_OBJECT_MULTI; + return getIconName(idx); + } + + switch(asset_type) + { + case LLAssetType::AT_TEXTURE: + idx = (inventory_type == LLInventoryType::IT_SNAPSHOT) ? LLInventoryType::ICONNAME_SNAPSHOT : LLInventoryType::ICONNAME_TEXTURE; + break; + case LLAssetType::AT_SOUND: + idx = LLInventoryType::ICONNAME_SOUND; + break; + case LLAssetType::AT_CALLINGCARD: + idx = (misc_flag != 0) ? LLInventoryType::ICONNAME_CALLINGCARD_ONLINE : LLInventoryType::ICONNAME_CALLINGCARD_OFFLINE; + break; + case LLAssetType::AT_LANDMARK: + idx = (misc_flag != 0) ? LLInventoryType::ICONNAME_LANDMARK_VISITED : LLInventoryType::ICONNAME_LANDMARK; + break; + case LLAssetType::AT_SCRIPT: + case LLAssetType::AT_LSL_TEXT: + case LLAssetType::AT_LSL_BYTECODE: + idx = LLInventoryType::ICONNAME_SCRIPT; + break; + case LLAssetType::AT_CLOTHING: + case LLAssetType::AT_BODYPART: + idx = assignWearableIcon(misc_flag); + break; + case LLAssetType::AT_NOTECARD: + idx = LLInventoryType::ICONNAME_NOTECARD; + break; + case LLAssetType::AT_ANIMATION: + idx = LLInventoryType::ICONNAME_ANIMATION; + break; + case LLAssetType::AT_GESTURE: + idx = LLInventoryType::ICONNAME_GESTURE; + break; + case LLAssetType::AT_LINK: + idx = LLInventoryType::ICONNAME_LINKITEM; + break; + case LLAssetType::AT_LINK_FOLDER: + idx = LLInventoryType::ICONNAME_LINKFOLDER; + break; + case LLAssetType::AT_OBJECT: + idx = LLInventoryType::ICONNAME_OBJECT; + break; + case LLAssetType::AT_MESH: + idx = LLInventoryType::ICONNAME_MESH; + default: + break; + } + + return getIconName(idx); +} + + +const std::string& LLInventoryIcon::getIconName(LLInventoryType::EIconName idx) +{ + const IconEntry *entry = LLIconDictionary::instance().lookup(idx); + return entry->mName; +} + +LLInventoryType::EIconName LLInventoryIcon::assignWearableIcon(U32 misc_flag) +{ + const LLWearableType::EType wearable_type = LLWearableType::EType(LLInventoryItemFlags::II_FLAGS_WEARABLES_MASK & misc_flag); + return LLWearableType::getIconName(wearable_type); +} diff --git a/indra/newview/llinventoryicon.h b/indra/newview/llinventoryicon.h new file mode 100644 index 0000000000..659448143d --- /dev/null +++ b/indra/newview/llinventoryicon.h @@ -0,0 +1,56 @@ +/** + * @file llinventoryfunctions.h + * @brief Miscellaneous inventory-related functions and classes + * class definition + * + * $LicenseInfo:firstyear=2001&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLINVENTORYICON_H +#define LL_LLINVENTORYICON_H + +#include "llassettype.h" +#include "llinventorytype.h" +#include "lluiimage.h" + +class LLInventoryIcon +{ +public: + static const std::string& getIconName(LLAssetType::EType asset_type, + LLInventoryType::EType inventory_type = LLInventoryType::IT_NONE, + U32 misc_flag = 0, // different meanings depending on item type + BOOL item_is_multi = FALSE); + static const std::string& getIconName(LLInventoryType::EIconName idx); + + static LLUIImagePtr getIcon(LLAssetType::EType asset_type, + LLInventoryType::EType inventory_type = LLInventoryType::IT_NONE, + U32 misc_flag = 0, // different meanings depending on item type + BOOL item_is_multi = FALSE); + static LLUIImagePtr getIcon(LLInventoryType::EIconName idx); + +protected: + static LLInventoryType::EIconName assignWearableIcon(U32 misc_flag); +}; +#endif // LL_LLINVENTORYICON_H + + + diff --git a/indra/newview/llinventorylistitem.cpp b/indra/newview/llinventorylistitem.cpp index 3e0849a795..26041767fd 100644 --- a/indra/newview/llinventorylistitem.cpp +++ b/indra/newview/llinventorylistitem.cpp @@ -37,6 +37,7 @@ #include "lltextutil.h" // newview +#include "llinventoryicon.h" #include "llinventorymodel.h" #include "llviewerinventory.h" diff --git a/indra/newview/llmediactrl.cpp b/indra/newview/llmediactrl.cpp index 7650fe9229..04744ab34c 100644 --- a/indra/newview/llmediactrl.cpp +++ b/indra/newview/llmediactrl.cpp @@ -119,8 +119,8 @@ LLMediaCtrl::LLMediaCtrl( const Params& p) : if(!getDecoupleTextureSize()) { - S32 screen_width = llround((F32)getRect().getWidth() * LLUI::sGLScaleFactor.mV[VX]); - S32 screen_height = llround((F32)getRect().getHeight() * LLUI::sGLScaleFactor.mV[VY]); + S32 screen_width = llround((F32)getRect().getWidth() * LLUI::getScaleFactor().mV[VX]); + S32 screen_height = llround((F32)getRect().getHeight() * LLUI::getScaleFactor().mV[VY]); setTextureSize(screen_width, screen_height); } @@ -469,8 +469,8 @@ void LLMediaCtrl::reshape( S32 width, S32 height, BOOL called_from_parent ) { if(!getDecoupleTextureSize()) { - S32 screen_width = llround((F32)width * LLUI::sGLScaleFactor.mV[VX]); - S32 screen_height = llround((F32)height * LLUI::sGLScaleFactor.mV[VY]); + S32 screen_width = llround((F32)width * LLUI::getScaleFactor().mV[VX]); + S32 screen_height = llround((F32)height * LLUI::getScaleFactor().mV[VY]); // when floater is minimized, these sizes are negative if ( screen_height > 0 && screen_width > 0 ) @@ -687,7 +687,7 @@ bool LLMediaCtrl::ensureMediaSourceExists() mMediaSource->addObserver( this ); mMediaSource->setBackgroundColor( getBackgroundColor() ); mMediaSource->setTrustedBrowser(mTrusted); - mMediaSource->setPageZoomFactor( LLUI::sGLScaleFactor.mV[ VX ] ); + mMediaSource->setPageZoomFactor( LLUI::getScaleFactor().mV[ VX ] ); if(mClearCache) { @@ -770,7 +770,7 @@ void LLMediaCtrl::draw() { gGL.pushUIMatrix(); { - mMediaSource->setPageZoomFactor( LLUI::sGLScaleFactor.mV[ VX ] ); + mMediaSource->setPageZoomFactor( LLUI::getScaleFactor().mV[ VX ] ); // scale texture to fit the space using texture coords gGL.getTexUnit(0)->bind(media_texture); @@ -884,14 +884,14 @@ void LLMediaCtrl::convertInputCoords(S32& x, S32& y) coords_opengl = mMediaSource->getMediaPlugin()->getTextureCoordsOpenGL(); } - x = llround((F32)x * LLUI::sGLScaleFactor.mV[VX]); + x = llround((F32)x * LLUI::getScaleFactor().mV[VX]); if ( ! coords_opengl ) { - y = llround((F32)(y) * LLUI::sGLScaleFactor.mV[VY]); + y = llround((F32)(y) * LLUI::getScaleFactor().mV[VY]); } else { - y = llround((F32)(getRect().getHeight() - y) * LLUI::sGLScaleFactor.mV[VY]); + y = llround((F32)(getRect().getHeight() - y) * LLUI::getScaleFactor().mV[VY]); }; } diff --git a/indra/newview/llpanelgroupnotices.cpp b/indra/newview/llpanelgroupnotices.cpp index 31c0e3d01a..9a3ea0774b 100644 --- a/indra/newview/llpanelgroupnotices.cpp +++ b/indra/newview/llpanelgroupnotices.cpp @@ -35,6 +35,7 @@ #include "llviewerinventory.h" #include "llinventorydefines.h" #include "llinventoryfunctions.h" +#include "llinventoryicon.h" #include "llinventorymodel.h" #include "llfloaterinventory.h" #include "llagent.h" diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 1ca24f3031..7c3425d71b 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -47,6 +47,7 @@ #include "llfolderview.h" #include "llinventorybridge.h" #include "llinventorydefines.h" +#include "llinventoryicon.h" #include "llinventoryfilter.h" #include "llinventoryfunctions.h" #include "llpreviewanim.h" diff --git a/indra/newview/lltoastgroupnotifypanel.cpp b/indra/newview/lltoastgroupnotifypanel.cpp index 75178a6ef8..64be5408be 100644 --- a/indra/newview/lltoastgroupnotifypanel.cpp +++ b/indra/newview/lltoastgroupnotifypanel.cpp @@ -33,6 +33,7 @@ #include "llbutton.h" #include "lliconctrl.h" #include "llinventoryfunctions.h" +#include "llinventoryicon.h" #include "llnotifications.h" #include "llviewertexteditor.h" diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp index 3b486efd7e..cc697f8510 100644 --- a/indra/newview/llviewerdisplay.cpp +++ b/indra/newview/llviewerdisplay.cpp @@ -1440,7 +1440,7 @@ void render_ui_2d() gGL.pushMatrix(); S32 half_width = (gViewerWindow->getWorldViewWidthScaled() / 2); S32 half_height = (gViewerWindow->getWorldViewHeightScaled() / 2); - gGL.scalef(LLUI::sGLScaleFactor.mV[0], LLUI::sGLScaleFactor.mV[1], 1.f); + gGL.scalef(LLUI::getScaleFactor().mV[0], LLUI::getScaleFactor().mV[1], 1.f); gGL.translatef((F32)half_width, (F32)half_height, 0.f); F32 zoom = gAgentCamera.mHUDCurZoom; gGL.scalef(zoom,zoom,1.f); @@ -1478,10 +1478,10 @@ void render_ui_2d() LLUI::sDirtyRect = last_rect; last_rect = t_rect; - last_rect.mLeft = LLRect::tCoordType(last_rect.mLeft / LLUI::sGLScaleFactor.mV[0]); - last_rect.mRight = LLRect::tCoordType(last_rect.mRight / LLUI::sGLScaleFactor.mV[0]); - last_rect.mTop = LLRect::tCoordType(last_rect.mTop / LLUI::sGLScaleFactor.mV[1]); - last_rect.mBottom = LLRect::tCoordType(last_rect.mBottom / LLUI::sGLScaleFactor.mV[1]); + last_rect.mLeft = LLRect::tCoordType(last_rect.mLeft / LLUI::getScaleFactor().mV[0]); + last_rect.mRight = LLRect::tCoordType(last_rect.mRight / LLUI::getScaleFactor().mV[0]); + last_rect.mTop = LLRect::tCoordType(last_rect.mTop / LLUI::getScaleFactor().mV[1]); + last_rect.mBottom = LLRect::tCoordType(last_rect.mBottom / LLUI::getScaleFactor().mV[1]); LLRect clip_rect(last_rect); diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index d5ca01931f..dd29260f70 100755 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -2140,7 +2140,7 @@ void LLViewerWindow::reshape(S32 width, S32 height) calcDisplayScale(); - BOOL display_scale_changed = mDisplayScale != LLUI::sGLScaleFactor; + BOOL display_scale_changed = mDisplayScale != LLUI::getScaleFactor(); LLUI::setScaleFactor(mDisplayScale); // update our window rectangle @@ -2346,7 +2346,7 @@ void LLViewerWindow::draw() // scale view by UI global scale factor and aspect ratio correction factor gGL.scaleUI(mDisplayScale.mV[VX], mDisplayScale.mV[VY], 1.f); - LLVector2 old_scale_factor = LLUI::sGLScaleFactor; + LLVector2 old_scale_factor = LLUI::getScaleFactor(); // apply camera zoom transform (for high res screenshots) F32 zoom_factor = LLViewerCamera::getInstance()->getZoomFactor(); S16 sub_region = LLViewerCamera::getInstance()->getZoomSubRegion(); @@ -2360,7 +2360,7 @@ void LLViewerWindow::draw() (F32)getWindowHeightScaled() * -(F32)pos_y, 0.f); gGL.scalef(zoom_factor, zoom_factor, 1.f); - LLUI::sGLScaleFactor *= zoom_factor; + LLUI::getScaleFactor() *= zoom_factor; } // Draw tool specific overlay on world @@ -2408,7 +2408,7 @@ void LLViewerWindow::draw() LLFontGL::HCENTER, LLFontGL::TOP); } - LLUI::sGLScaleFactor = old_scale_factor; + LLUI::setScaleFactor(old_scale_factor); } LLUI::popMatrix(); gGL.popMatrix(); @@ -3208,8 +3208,8 @@ void LLViewerWindow::updateLayout() void LLViewerWindow::updateMouseDelta() { - S32 dx = lltrunc((F32) (mCurrentMousePoint.mX - mLastMousePoint.mX) * LLUI::sGLScaleFactor.mV[VX]); - S32 dy = lltrunc((F32) (mCurrentMousePoint.mY - mLastMousePoint.mY) * LLUI::sGLScaleFactor.mV[VY]); + S32 dx = lltrunc((F32) (mCurrentMousePoint.mX - mLastMousePoint.mX) * LLUI::getScaleFactor().mV[VX]); + S32 dy = lltrunc((F32) (mCurrentMousePoint.mY - mLastMousePoint.mY) * LLUI::getScaleFactor().mV[VY]); //RN: fix for asynchronous notification of mouse leaving window not working LLCoordWindow mouse_pos; diff --git a/indra/newview/llwearableitemslist.cpp b/indra/newview/llwearableitemslist.cpp index c7e9215643..c196d70617 100755 --- a/indra/newview/llwearableitemslist.cpp +++ b/indra/newview/llwearableitemslist.cpp @@ -34,6 +34,7 @@ #include "llagentwearables.h" #include "llappearancemgr.h" #include "llinventoryfunctions.h" +#include "llinventoryicon.h" #include "lltransutil.h" #include "llviewerattachmenu.h" #include "llvoavatarself.h" diff --git a/indra/newview/llworldmapview.cpp b/indra/newview/llworldmapview.cpp index a3ccf87cfc..428be8efb9 100644 --- a/indra/newview/llworldmapview.cpp +++ b/indra/newview/llworldmapview.cpp @@ -421,7 +421,7 @@ void LLWorldMapView::draw() { // Inform the fetch mechanism of the size we need S32 draw_size = llround(sMapScale); - overlayimage->setKnownDrawSize(llround(draw_size * LLUI::sGLScaleFactor.mV[VX]), llround(draw_size * LLUI::sGLScaleFactor.mV[VY])); + overlayimage->setKnownDrawSize(llround(draw_size * LLUI::getScaleFactor().mV[VX]), llround(draw_size * LLUI::getScaleFactor().mV[VY])); // Draw something whenever we have enough info if (overlayimage->hasGLTexture()) { -- cgit v1.3 From 53471178fed23f32fbb967b6d001c58d8612e450 Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Fri, 7 Dec 2012 20:06:30 -0800 Subject: CHUI-509, CHUI-585 : Fixed : Add font color parameters to received items and other inventory elements created --- indra/newview/llpanelmarketplaceinboxinventory.cpp | 10 ++++++++++ indra/newview/llpanelobjectinventory.cpp | 11 +++++++++++ 2 files changed, 21 insertions(+) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp index 68aefa7fb7..adfb2dee86 100644 --- a/indra/newview/llpanelmarketplaceinboxinventory.cpp +++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp @@ -40,6 +40,8 @@ #define DEBUGGING_FRESHNESS 0 +const LLColor4U DEFAULT_WHITE(255, 255, 255); + // // statics // @@ -62,18 +64,24 @@ LLInboxInventoryPanel::~LLInboxInventoryPanel() LLFolderViewFolder * LLInboxInventoryPanel::createFolderViewFolder(LLInvFVBridge * bridge) { + LLUIColor item_color = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); + LLInboxFolderViewFolder::Params params; params.name = bridge->getDisplayName(); params.root = mFolderRoot; params.listener = bridge; params.tool_tip = params.name; + params.font_color = item_color; + params.font_highlight_color = item_color; return LLUICtrlFactory::create(params); } LLFolderViewItem * LLInboxInventoryPanel::createFolderViewItem(LLInvFVBridge * bridge) { + LLUIColor item_color = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); + LLInboxFolderViewItem::Params params; params.name = bridge->getDisplayName(); @@ -82,6 +90,8 @@ LLFolderViewItem * LLInboxInventoryPanel::createFolderViewItem(LLInvFVBridge * b params.listener = bridge; params.rect = LLRect (0, 0, 0, 0); params.tool_tip = params.name; + params.font_color = item_color; + params.font_highlight_color = item_color; return LLUICtrlFactory::create(params); } diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index de12826452..a2aabb50b5 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -66,6 +66,7 @@ #include "llviewerobjectlist.h" #include "llviewermessage.h" +const LLColor4U DEFAULT_WHITE(255, 255, 255); ///---------------------------------------------------------------------------- /// Class LLTaskInvFVBridge @@ -1719,11 +1720,15 @@ void LLPanelObjectInventory::createFolderViews(LLInventoryObject* inventory_root bridge = LLTaskInvFVBridge::createObjectBridge(this, inventory_root); if(bridge) { + LLUIColor item_color = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); + LLFolderViewFolder::Params p; p.name = inventory_root->getName(); p.tool_tip = p.name; p.root = mFolders; p.listener = bridge; + p.font_color = item_color; + p.font_highlight_color = item_color; LLFolderViewFolder* new_folder = LLUICtrlFactory::create(p); new_folder->addToFolder(mFolders); @@ -1742,6 +1747,8 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li LLInventoryObject* parent, LLFolderViewFolder* folder) { + LLUIColor item_color = LLUIColorTable::instance().getColor("MenuItemEnabledColor", DEFAULT_WHITE); + // Find all in the first pass LLDynamicArray child_categories; LLTaskInvFVBridge* bridge; @@ -1767,6 +1774,8 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li p.root = mFolders; p.listener = bridge; p.tool_tip = p.name; + p.font_color = item_color; + p.font_highlight_color = item_color; view = LLUICtrlFactory::create(p); child_categories.put(new obj_folder_pair(obj, (LLFolderViewFolder*)view)); @@ -1780,6 +1789,8 @@ void LLPanelObjectInventory::createViewsForCategory(LLInventoryObject::object_li params.listener(bridge); params.rect(LLRect()); params.tool_tip = params.name; + params.font_color = item_color; + params.font_highlight_color = item_color; view = LLUICtrlFactory::create (params); } view->addToFolder(folder); -- cgit v1.3 From 3d0ec3da5baea6bb2b9b72707a884ac7b516c4fd Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Mon, 7 Jan 2013 15:32:47 -0800 Subject: CHUI-659 : WIP : Verified (tested) and cleaned up some CHUI-101 refactoring code. --- indra/llui/llfolderviewmodel.h | 4 ++-- indra/newview/llinventoryfilter.cpp | 9 +++------ indra/newview/llpanelobjectinventory.cpp | 10 +++++----- indra/newview/lltexturectrl.cpp | 15 --------------- 4 files changed, 10 insertions(+), 28 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/llui/llfolderviewmodel.h b/indra/llui/llfolderviewmodel.h index 7019857c0f..5837052565 100644 --- a/indra/llui/llfolderviewmodel.h +++ b/indra/llui/llfolderviewmodel.h @@ -401,8 +401,8 @@ public: virtual const FilterType& getFilter() const { return mFilter; } virtual void setFilter(const FilterType& filter) { mFilter = filter; } - // TODO RN: remove this and put all filtering logic in view model - // add getStatusText and isFiltering() + // By default, we assume the content is available. If a network fetch mechanism is implemented for the model, + // this method needs to be overloaded and return the relevant fetch status. virtual bool contentsReady() { return true; } diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index c913269aad..92f2d33073 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -42,8 +42,6 @@ #include "llclipboard.h" #include "lltrans.h" -//TODO RN: fix use of static cast as much as possible - LLFastTimer::DeclareTimer FT_FILTER_CLIPBOARD("Filter Clipboard"); LLInventoryFilter::FilterOps::FilterOps(const Params& p) @@ -83,7 +81,7 @@ LLInventoryFilter::LLInventoryFilter(const Params& p) bool LLInventoryFilter::check(const LLFolderViewModelItem* item) { - const LLFolderViewModelItemInventory* listener = static_cast(item); + const LLFolderViewModelItemInventory* listener = dynamic_cast(item); // Clipboard cut items are *always* filtered so we need this value upfront const BOOL passed_clipboard = (listener ? checkAgainstClipboard(listener->getUUID()) : TRUE); @@ -122,7 +120,7 @@ bool LLInventoryFilter::check(const LLInventoryItem* item) bool LLInventoryFilter::checkFolder(const LLFolderViewModelItem* item) const { - const LLFolderViewModelItemInventory* listener = static_cast(item); + const LLFolderViewModelItemInventory* listener = dynamic_cast(item); if (!listener) { llerrs << "Folder view event listener not found." << llendl; @@ -384,8 +382,7 @@ const std::string& LLInventoryFilter::getFilterSubString(BOOL trim) const std::string::size_type LLInventoryFilter::getStringMatchOffset(LLFolderViewModelItem* item) const { - const LLFolderViewModelItemInventory* listener = static_cast(item); - return mFilterSubString.size() ? listener->getSearchableName().find(mFilterSubString) : std::string::npos; + return mFilterSubString.size() ? item->getSearchableName().find(mFilterSubString) : std::string::npos; } bool LLInventoryFilter::isDefault() const diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index a2aabb50b5..527aefe821 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1555,6 +1555,10 @@ void LLPanelObjectInventory::reset() mCommitCallbackRegistrar.pushScope(); // push local callbacks + // Reset the inventory model to show all folders by default + mInventoryViewModel.getFilter().setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); + + // Create a new folder view root LLRect dummy_rect(0, 1, 1, 0); LLFolderView::Params p; p.name = "task inventory"; @@ -1566,11 +1570,7 @@ void LLPanelObjectInventory::reset() p.view_model = &mInventoryViewModel; p.root = NULL; mFolders = LLUICtrlFactory::create(p); - // this ensures that we never say "searching..." or "no items found" - //TODO RN: make this happen by manipulating filter object directly - LLInventoryFilter& inventoryFilter = dynamic_cast(mFolders->getFolderViewModel()->getFilter()); - inventoryFilter.setShowFolderState(LLInventoryFilter::SHOW_ALL_FOLDERS); - + mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); if (hasFocus()) diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 65f0290060..007eb8e33f 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -652,26 +652,11 @@ void LLFloaterTexturePicker::draw() { folder_view->setPinningSelectedItem(mSelectedItemPinned); folder_view->getViewModelItem()->dirtyFilter(); - //TODO RN: test..still works without this? - //folder_view->arrangeFromRoot(); - mSelectedItemPinned = TRUE; } } } -// static -/* -void LLFloaterTexturePicker::onSaveAnotherCopyDialog( S32 option, void* userdata ) -{ - LLFloaterTexturePicker* self = (LLFloaterTexturePicker*) userdata; - if( 0 == option ) - { - self->copyToInventoryFinal(); - } -} -*/ - const LLUUID& LLFloaterTexturePicker::findItemID(const LLUUID& asset_id, BOOL copyable_only) { LLViewerInventoryCategory::cat_array_t cats; -- cgit v1.3 From b5b44ddf175e46379aa20b79b0abedab6bc05e2e Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Thu, 10 Jan 2013 11:10:41 -0800 Subject: CHUI-649 : Fixed : Added the contextual menu to in build content tab --- indra/newview/llinventorypanel.cpp | 4 ++-- indra/newview/llpanelobjectinventory.cpp | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 25dc365467..c4918f0a31 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -181,7 +181,7 @@ LLFolderView * LLInventoryPanel::createFolderRoot(LLUUID root_id ) LLAssetType::AT_CATEGORY, LLInventoryType::IT_CATEGORY, this, - &mInventoryViewModel, + &mInventoryViewModel, NULL, root_id); p.view_model = &mInventoryViewModel; @@ -218,7 +218,7 @@ void LLInventoryPanel::initFromParams(const LLInventoryPanel::Params& params) mFolderRoot = createFolderRoot(root_id); addItemID(root_id, mFolderRoot); -} + } mCommitCallbackRegistrar.popScope(); mFolderRoot->setCallbackRegistrar(&mCommitCallbackRegistrar); diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 527aefe821..7555ac7b2c 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -1569,6 +1569,8 @@ void LLPanelObjectInventory::reset() p.folder_indentation = -14; // subtract space normally reserved for folder expanders p.view_model = &mInventoryViewModel; p.root = NULL; + p.options_menu = "menu_inventory.xml"; + mFolders = LLUICtrlFactory::create(p); mFolders->setCallbackRegistrar(&mCommitCallbackRegistrar); -- cgit v1.3 From bf6182daa8b4d7cea79310547f71d7a3155e17b0 Mon Sep 17 00:00:00 2001 From: Graham Madarasz Date: Fri, 29 Mar 2013 07:50:08 -0700 Subject: Update Mac and Windows breakpad builds to latest --- .hgignore | 0 .hgtags | 0 BuildParams | 0 autobuild.xml | 9 +++++---- doc/LGPL-licence.txt | 0 doc/LICENSE-logos.txt | 0 doc/LICENSE-source.txt | 0 doc/contributions.txt | 0 doc/releasenotes-where.txt | 0 doc/translations.txt | 0 etc/message.xml | 0 indra/CMakeLists.txt | 0 indra/cmake/00-Common.cmake | 0 indra/cmake/APR.cmake | 0 indra/cmake/Audio.cmake | 0 indra/cmake/BerkeleyDB.cmake | 0 indra/cmake/Boost.cmake | 0 indra/cmake/BuildVersion.cmake | 0 indra/cmake/CARes.cmake | 0 indra/cmake/CMakeCopyIfDifferent.cmake | 0 indra/cmake/CMakeLists.txt | 0 indra/cmake/CSharpMacros.cmake | 0 indra/cmake/CURL.cmake | 0 indra/cmake/Copy3rdPartyLibs.cmake | 0 indra/cmake/CopyBackToSource.cmake | 0 indra/cmake/DBusGlib.cmake | 0 indra/cmake/DeploySharedLibs.cmake | 0 indra/cmake/DirectX.cmake | 0 indra/cmake/DragDrop.cmake | 0 indra/cmake/EXPAT.cmake | 0 indra/cmake/ExamplePlugin.cmake | 0 indra/cmake/Externals.cmake | 0 indra/cmake/FMOD.cmake | 0 indra/cmake/FindAPR.cmake | 0 indra/cmake/FindAutobuild.cmake | 0 indra/cmake/FindBerkeleyDB.cmake | 0 indra/cmake/FindCARes.cmake | 0 indra/cmake/FindELFIO.cmake | 0 indra/cmake/FindFMOD.cmake | 0 indra/cmake/FindGLH.cmake | 0 indra/cmake/FindGoogleBreakpad.cmake | 0 indra/cmake/FindGooglePerfTools.cmake | 0 indra/cmake/FindHUNSPELL.cmake | 0 indra/cmake/FindJsonCpp.cmake | 0 indra/cmake/FindLLQtWebkit.cmake | 0 indra/cmake/FindMT.cmake | 0 indra/cmake/FindMono.cmake | 0 indra/cmake/FindMySQL.cmake | 0 indra/cmake/FindNDOF.cmake | 0 indra/cmake/FindOpenJPEG.cmake | 0 indra/cmake/FindSCP.cmake | 0 indra/cmake/FindSVN.cmake | 0 indra/cmake/FindXmlRpcEpi.cmake | 0 indra/cmake/FindZLIB.cmake | 0 indra/cmake/FreeType.cmake | 0 indra/cmake/GLH.cmake | 0 indra/cmake/GLOD.cmake | 0 indra/cmake/GStreamer010Plugin.cmake | 0 indra/cmake/GetPrerequisites_2_8.cmake | 0 indra/cmake/Glui.cmake | 0 indra/cmake/Glut.cmake | 0 indra/cmake/GoogleBreakpad.cmake | 0 indra/cmake/GoogleMock.cmake | 0 indra/cmake/GooglePerfTools.cmake | 0 indra/cmake/Havok.cmake | 0 indra/cmake/Hunspell.cmake | 0 indra/cmake/JPEG.cmake | 0 indra/cmake/JsonCpp.cmake | 0 indra/cmake/LLAudio.cmake | 0 indra/cmake/LLCharacter.cmake | 0 indra/cmake/LLCommon.cmake | 0 indra/cmake/LLCoreHttp.cmake | 0 indra/cmake/LLCrashLogger.cmake | 0 indra/cmake/LLDatabase.cmake | 0 indra/cmake/LLImage.cmake | 0 indra/cmake/LLImageJ2COJ.cmake | 0 indra/cmake/LLInventory.cmake | 0 indra/cmake/LLKDU.cmake | 0 indra/cmake/LLLogin.cmake | 0 indra/cmake/LLMath.cmake | 0 indra/cmake/LLMessage.cmake | 0 indra/cmake/LLPhysicsExtensions.cmake | 0 indra/cmake/LLPlugin.cmake | 0 indra/cmake/LLPrimitive.cmake | 0 indra/cmake/LLRender.cmake | 0 indra/cmake/LLScene.cmake | 0 indra/cmake/LLSharedLibs.cmake | 0 indra/cmake/LLTestCommand.cmake | 0 indra/cmake/LLUI.cmake | 0 indra/cmake/LLVFS.cmake | 0 indra/cmake/LLWindow.cmake | 0 indra/cmake/LLXML.cmake | 0 indra/cmake/LLXUIXML.cmake | 0 indra/cmake/LScript.cmake | 0 indra/cmake/Linking.cmake | 0 indra/cmake/MediaPluginBase.cmake | 0 indra/cmake/MonoDeps.cmake | 0 indra/cmake/MonoEmbed.cmake | 0 indra/cmake/MySQL.cmake | 0 indra/cmake/NDOF.cmake | 0 indra/cmake/NVAPI.cmake | 0 indra/cmake/OPENAL.cmake | 0 indra/cmake/OpenGL.cmake | 0 indra/cmake/OpenJPEG.cmake | 0 indra/cmake/OpenSSL.cmake | 0 indra/cmake/PNG.cmake | 0 indra/cmake/PluginAPI.cmake | 0 indra/cmake/Prebuilt.cmake | 0 indra/cmake/PulseAudio.cmake | 0 indra/cmake/Python.cmake | 0 indra/cmake/QuickTimePlugin.cmake | 0 indra/cmake/TemplateCheck.cmake | 0 indra/cmake/Tut.cmake | 0 indra/cmake/UI.cmake | 0 indra/cmake/UnixInstall.cmake | 0 indra/cmake/Variables.cmake | 0 indra/cmake/ViewerMiscLibs.cmake | 0 indra/cmake/VisualLeakDetector.cmake | 0 indra/cmake/WebKitLibPlugin.cmake | 0 indra/cmake/XmlRpcEpi.cmake | 0 indra/cmake/ZLIB.cmake | 0 indra/cmake/cmake_dummy.cpp | 0 indra/cmake/run_build_test.py | 0 indra/copy_win_scripts/CMakeLists.txt | 0 indra/copy_win_scripts/start-client.py | 0 indra/edit-me-to-trigger-new-build.txt | 0 indra/fix-incredibuild.py | 0 indra/integration_tests/CMakeLists.txt | 0 indra/integration_tests/llimage_libtest/CMakeLists.txt | 0 indra/integration_tests/llimage_libtest/llimage_libtest.cpp | 0 indra/integration_tests/llimage_libtest/llimage_libtest.h | 0 indra/integration_tests/llui_libtest/CMakeLists.txt | 0 indra/integration_tests/llui_libtest/llui_libtest.cpp | 0 indra/integration_tests/llui_libtest/llui_libtest.h | 0 indra/integration_tests/llui_libtest/llwidgetreg.cpp | 0 indra/integration_tests/llui_libtest/llwidgetreg.h | 0 indra/lib/python/indra/__init__.py | 0 indra/lib/python/indra/base/__init__.py | 0 indra/lib/python/indra/base/cllsd_test.py | 0 indra/lib/python/indra/base/config.py | 0 indra/lib/python/indra/base/llsd.py | 0 indra/lib/python/indra/base/lluuid.py | 0 indra/lib/python/indra/base/metrics.py | 0 indra/lib/python/indra/ipc/__init__.py | 0 indra/lib/python/indra/ipc/compatibility.py | 0 indra/lib/python/indra/ipc/httputil.py | 0 indra/lib/python/indra/ipc/llmessage.py | 0 indra/lib/python/indra/ipc/llsdhttp.py | 0 indra/lib/python/indra/ipc/mysql_pool.py | 0 indra/lib/python/indra/ipc/russ.py | 0 indra/lib/python/indra/ipc/servicebuilder.py | 0 indra/lib/python/indra/ipc/siesta.py | 0 indra/lib/python/indra/ipc/siesta_test.py | 0 indra/lib/python/indra/ipc/tokenstream.py | 0 indra/lib/python/indra/ipc/webdav.py | 0 indra/lib/python/indra/ipc/xml_rpc.py | 0 indra/lib/python/indra/util/__init__.py | 0 indra/lib/python/indra/util/fastest_elementtree.py | 0 indra/lib/python/indra/util/helpformatter.py | 0 indra/lib/python/indra/util/iterators.py | 0 indra/lib/python/indra/util/llmanifest.py | 0 indra/lib/python/indra/util/llsubprocess.py | 0 indra/lib/python/indra/util/llversion.py | 0 indra/lib/python/indra/util/named_query.py | 0 indra/lib/python/indra/util/shutil2.py | 0 indra/lib/python/indra/util/term.py | 0 indra/lib/python/indra/util/test_win32_manifest.py | 0 indra/lib/python/uuid.py | 0 indra/linux_crash_logger/CMakeLists.txt | 0 indra/linux_crash_logger/linux_crash_logger.cpp | 0 indra/linux_crash_logger/llcrashloggerlinux.cpp | 0 indra/linux_crash_logger/llcrashloggerlinux.h | 0 indra/llaudio/CMakeLists.txt | 0 indra/llaudio/llaudiodecodemgr.cpp | 0 indra/llaudio/llaudiodecodemgr.h | 0 indra/llaudio/llaudioengine.cpp | 0 indra/llaudio/llaudioengine.h | 0 indra/llaudio/llaudioengine_fmod.cpp | 0 indra/llaudio/llaudioengine_fmod.h | 0 indra/llaudio/llaudioengine_openal.cpp | 0 indra/llaudio/llaudioengine_openal.h | 0 indra/llaudio/lllistener.cpp | 0 indra/llaudio/lllistener.h | 0 indra/llaudio/lllistener_ds3d.h | 0 indra/llaudio/lllistener_fmod.cpp | 0 indra/llaudio/lllistener_fmod.h | 0 indra/llaudio/lllistener_openal.cpp | 0 indra/llaudio/lllistener_openal.h | 0 indra/llaudio/llstreamingaudio.h | 0 indra/llaudio/llstreamingaudio_fmod.cpp | 0 indra/llaudio/llstreamingaudio_fmod.h | 0 indra/llaudio/llvorbisencode.cpp | 0 indra/llaudio/llvorbisencode.h | 0 indra/llaudio/llwindgen.h | 0 indra/llcharacter/CMakeLists.txt | 0 indra/llcharacter/llanimationstates.cpp | 0 indra/llcharacter/llanimationstates.h | 0 indra/llcharacter/llbvhconsts.h | 0 indra/llcharacter/llbvhloader.cpp | 0 indra/llcharacter/llbvhloader.h | 0 indra/llcharacter/llcharacter.cpp | 0 indra/llcharacter/llcharacter.h | 0 indra/llcharacter/lleditingmotion.cpp | 0 indra/llcharacter/lleditingmotion.h | 0 indra/llcharacter/llgesture.cpp | 0 indra/llcharacter/llgesture.h | 0 indra/llcharacter/llhandmotion.cpp | 0 indra/llcharacter/llhandmotion.h | 0 indra/llcharacter/llheadrotmotion.cpp | 0 indra/llcharacter/llheadrotmotion.h | 0 indra/llcharacter/lljoint.cpp | 0 indra/llcharacter/lljoint.h | 0 indra/llcharacter/lljointsolverrp3.cpp | 0 indra/llcharacter/lljointsolverrp3.h | 0 indra/llcharacter/lljointstate.h | 0 indra/llcharacter/llkeyframefallmotion.cpp | 0 indra/llcharacter/llkeyframefallmotion.h | 0 indra/llcharacter/llkeyframemotion.cpp | 0 indra/llcharacter/llkeyframemotion.h | 0 indra/llcharacter/llkeyframemotionparam.cpp | 0 indra/llcharacter/llkeyframemotionparam.h | 0 indra/llcharacter/llkeyframestandmotion.cpp | 0 indra/llcharacter/llkeyframestandmotion.h | 0 indra/llcharacter/llkeyframewalkmotion.cpp | 0 indra/llcharacter/llkeyframewalkmotion.h | 0 indra/llcharacter/llmotion.cpp | 0 indra/llcharacter/llmotion.h | 0 indra/llcharacter/llmotioncontroller.cpp | 0 indra/llcharacter/llmotioncontroller.h | 0 indra/llcharacter/llmultigesture.cpp | 0 indra/llcharacter/llmultigesture.h | 0 indra/llcharacter/llpose.cpp | 0 indra/llcharacter/llpose.h | 0 indra/llcharacter/llstatemachine.cpp | 0 indra/llcharacter/llstatemachine.h | 0 indra/llcharacter/lltargetingmotion.cpp | 0 indra/llcharacter/lltargetingmotion.h | 0 indra/llcharacter/llvisualparam.cpp | 0 indra/llcharacter/llvisualparam.h | 0 indra/llcharacter/tests/lljoint_test.cpp | 0 indra/llcommon/CMakeLists.txt | 0 indra/llcommon/bitpack.cpp | 0 indra/llcommon/bitpack.h | 0 indra/llcommon/ctype_workaround.h | 0 indra/llcommon/doublelinkedlist.h | 0 indra/llcommon/fix_macros.h | 0 indra/llcommon/imageids.cpp | 0 indra/llcommon/imageids.h | 0 indra/llcommon/indra_constants.cpp | 0 indra/llcommon/indra_constants.h | 0 indra/llcommon/is_approx_equal_fraction.h | 0 indra/llcommon/linden_common.h | 0 indra/llcommon/linked_lists.h | 0 indra/llcommon/ll_template_cast.h | 0 indra/llcommon/llaccountingcost.h | 0 indra/llcommon/llagentconstants.h | 0 indra/llcommon/llallocator.cpp | 0 indra/llcommon/llallocator.h | 0 indra/llcommon/llallocator_heap_profile.cpp | 0 indra/llcommon/llallocator_heap_profile.h | 0 indra/llcommon/llapp.cpp | 0 indra/llcommon/llapp.h | 0 indra/llcommon/llapr.cpp | 0 indra/llcommon/llapr.h | 0 indra/llcommon/llassettype.cpp | 0 indra/llcommon/llassettype.h | 0 indra/llcommon/llassoclist.h | 0 indra/llcommon/llavatarconstants.h | 0 indra/llcommon/llavatarname.cpp | 0 indra/llcommon/llavatarname.h | 0 indra/llcommon/llbase32.cpp | 0 indra/llcommon/llbase32.h | 0 indra/llcommon/llbase64.cpp | 0 indra/llcommon/llbase64.h | 0 indra/llcommon/llboost.h | 0 indra/llcommon/llchat.h | 0 indra/llcommon/llclickaction.h | 0 indra/llcommon/llcommon.cpp | 0 indra/llcommon/llcommon.h | 0 indra/llcommon/llcommonutils.cpp | 0 indra/llcommon/llcommonutils.h | 0 indra/llcommon/llcoros.cpp | 0 indra/llcommon/llcoros.h | 0 indra/llcommon/llcrc.cpp | 0 indra/llcommon/llcrc.h | 0 indra/llcommon/llcriticaldamp.cpp | 0 indra/llcommon/llcriticaldamp.h | 0 indra/llcommon/llcursortypes.cpp | 0 indra/llcommon/llcursortypes.h | 0 indra/llcommon/lldarray.h | 0 indra/llcommon/lldarrayptr.h | 0 indra/llcommon/lldate.cpp | 0 indra/llcommon/lldate.h | 0 indra/llcommon/lldefs.h | 0 indra/llcommon/lldeleteutils.h | 0 indra/llcommon/lldependencies.cpp | 0 indra/llcommon/lldependencies.h | 0 indra/llcommon/lldepthstack.h | 0 indra/llcommon/lldictionary.cpp | 0 indra/llcommon/lldictionary.h | 0 indra/llcommon/lldlinked.h | 0 indra/llcommon/lldoubledispatch.h | 0 indra/llcommon/lldqueueptr.h | 0 indra/llcommon/llendianswizzle.h | 0 indra/llcommon/llenum.h | 0 indra/llcommon/llerror.cpp | 0 indra/llcommon/llerror.h | 0 indra/llcommon/llerrorcontrol.h | 0 indra/llcommon/llerrorlegacy.h | 0 indra/llcommon/llerrorthread.cpp | 0 indra/llcommon/llerrorthread.h | 0 indra/llcommon/llevent.cpp | 0 indra/llcommon/llevent.h | 0 indra/llcommon/lleventapi.cpp | 0 indra/llcommon/lleventapi.h | 0 indra/llcommon/lleventcoro.cpp | 0 indra/llcommon/lleventcoro.h | 0 indra/llcommon/lleventdispatcher.cpp | 0 indra/llcommon/lleventdispatcher.h | 0 indra/llcommon/lleventemitter.h | 0 indra/llcommon/lleventfilter.cpp | 0 indra/llcommon/lleventfilter.h | 0 indra/llcommon/llevents.cpp | 0 indra/llcommon/llevents.h | 0 indra/llcommon/lleventtimer.cpp | 0 indra/llcommon/lleventtimer.h | 0 indra/llcommon/llextendedstatus.h | 0 indra/llcommon/llfasttimer.cpp | 0 indra/llcommon/llfasttimer.h | 0 indra/llcommon/llfile.cpp | 0 indra/llcommon/llfile.h | 0 indra/llcommon/llfindlocale.cpp | 0 indra/llcommon/llfindlocale.h | 0 indra/llcommon/llfixedbuffer.cpp | 0 indra/llcommon/llfixedbuffer.h | 0 indra/llcommon/llfoldertype.cpp | 0 indra/llcommon/llformat.cpp | 0 indra/llcommon/llformat.h | 0 indra/llcommon/llframetimer.cpp | 0 indra/llcommon/llframetimer.h | 0 indra/llcommon/llhandle.h | 0 indra/llcommon/llhash.h | 0 indra/llcommon/llheartbeat.cpp | 0 indra/llcommon/llheartbeat.h | 0 indra/llcommon/llhttpstatuscodes.h | 0 indra/llcommon/llindexedqueue.h | 0 indra/llcommon/llinitparam.cpp | 0 indra/llcommon/llinitparam.h | 0 indra/llcommon/llinstancetracker.cpp | 0 indra/llcommon/llinstancetracker.h | 0 indra/llcommon/llkeythrottle.h | 0 indra/llcommon/llkeyusetracker.h | 0 indra/llcommon/lllazy.cpp | 0 indra/llcommon/lllazy.h | 0 indra/llcommon/llleap.cpp | 0 indra/llcommon/llleap.h | 0 indra/llcommon/llleaplistener.cpp | 0 indra/llcommon/llleaplistener.h | 0 indra/llcommon/lllinkedqueue.h | 0 indra/llcommon/lllistenerwrapper.h | 0 indra/llcommon/llliveappconfig.cpp | 0 indra/llcommon/llliveappconfig.h | 0 indra/llcommon/lllivefile.cpp | 0 indra/llcommon/lllivefile.h | 0 indra/llcommon/lllocalidhashmap.h | 0 indra/llcommon/lllog.cpp | 0 indra/llcommon/lllog.h | 0 indra/llcommon/lllslconstants.h | 0 indra/llcommon/llmap.h | 0 indra/llcommon/llmd5.cpp | 0 indra/llcommon/llmd5.h | 0 indra/llcommon/llmemory.cpp | 0 indra/llcommon/llmemory.h | 0 indra/llcommon/llmemorystream.cpp | 0 indra/llcommon/llmemorystream.h | 0 indra/llcommon/llmetricperformancetester.cpp | 0 indra/llcommon/llmetricperformancetester.h | 0 indra/llcommon/llmetrics.cpp | 0 indra/llcommon/llmetrics.h | 0 indra/llcommon/llmortician.cpp | 0 indra/llcommon/llmortician.h | 0 indra/llcommon/llnametable.h | 0 indra/llcommon/lloptioninterface.cpp | 0 indra/llcommon/lloptioninterface.h | 0 indra/llcommon/llpointer.h | 0 indra/llcommon/llpreprocessor.h | 0 indra/llcommon/llpriqueuemap.h | 0 indra/llcommon/llprocess.cpp | 0 indra/llcommon/llprocess.h | 0 indra/llcommon/llprocessor.cpp | 0 indra/llcommon/llprocessor.h | 0 indra/llcommon/llptrskiplist.h | 0 indra/llcommon/llptrskipmap.h | 0 indra/llcommon/llptrto.cpp | 0 indra/llcommon/llptrto.h | 0 indra/llcommon/llqueuedthread.cpp | 0 indra/llcommon/llqueuedthread.h | 0 indra/llcommon/llrand.cpp | 0 indra/llcommon/llrand.h | 0 indra/llcommon/llrefcount.cpp | 0 indra/llcommon/llrefcount.h | 0 indra/llcommon/llregistry.h | 0 indra/llcommon/llrun.cpp | 0 indra/llcommon/llrun.h | 0 indra/llcommon/llsafehandle.h | 0 indra/llcommon/llsd.cpp | 0 indra/llcommon/llsd.h | 0 indra/llcommon/llsdparam.cpp | 0 indra/llcommon/llsdparam.h | 0 indra/llcommon/llsdserialize.cpp | 0 indra/llcommon/llsdserialize.h | 0 indra/llcommon/llsdserialize_xml.cpp | 0 indra/llcommon/llsdserialize_xml.h | 0 indra/llcommon/llsdutil.cpp | 0 indra/llcommon/llsdutil.h | 0 indra/llcommon/llsecondlifeurls.cpp | 0 indra/llcommon/llsecondlifeurls.h | 0 indra/llcommon/llsimplehash.h | 0 indra/llcommon/llsingleton.cpp | 0 indra/llcommon/llsingleton.h | 0 indra/llcommon/llskiplist.h | 0 indra/llcommon/llskipmap.h | 0 indra/llcommon/llsmoothstep.h | 0 indra/llcommon/llsortedvector.h | 0 indra/llcommon/llstack.h | 0 indra/llcommon/llstacktrace.cpp | 0 indra/llcommon/llstacktrace.h | 0 indra/llcommon/llstat.cpp | 0 indra/llcommon/llstat.h | 0 indra/llcommon/llstatenums.h | 0 indra/llcommon/llstl.h | 0 indra/llcommon/llstreamqueue.cpp | 0 indra/llcommon/llstreamqueue.h | 0 indra/llcommon/llstreamtools.cpp | 0 indra/llcommon/llstreamtools.h | 0 indra/llcommon/llstrider.h | 0 indra/llcommon/llstring.cpp | 0 indra/llcommon/llstring.h | 0 indra/llcommon/llstringtable.cpp | 0 indra/llcommon/llstringtable.h | 0 indra/llcommon/llsys.cpp | 0 indra/llcommon/llsys.h | 0 indra/llcommon/llthread.cpp | 0 indra/llcommon/llthread.h | 0 indra/llcommon/llthreadsafequeue.cpp | 0 indra/llcommon/llthreadsafequeue.h | 0 indra/llcommon/lltimer.cpp | 0 indra/llcommon/lltimer.h | 0 indra/llcommon/lltreeiterators.h | 0 indra/llcommon/lltypeinfolookup.h | 0 indra/llcommon/lluri.cpp | 0 indra/llcommon/lluri.h | 0 indra/llcommon/lluuid.cpp | 0 indra/llcommon/lluuid.h | 0 indra/llcommon/lluuidhashmap.h | 0 indra/llcommon/llversionserver.h | 0 indra/llcommon/llversionviewer.h | 0 indra/llcommon/llworkerthread.cpp | 0 indra/llcommon/llworkerthread.h | 0 indra/llcommon/metaclass.cpp | 0 indra/llcommon/metaclass.h | 0 indra/llcommon/metaclasst.h | 0 indra/llcommon/metaproperty.cpp | 0 indra/llcommon/metaproperty.h | 0 indra/llcommon/metapropertyt.h | 0 indra/llcommon/reflective.cpp | 0 indra/llcommon/reflective.h | 0 indra/llcommon/reflectivet.h | 0 indra/llcommon/roles_constants.h | 0 indra/llcommon/stdenums.h | 0 indra/llcommon/stdtypes.h | 0 indra/llcommon/string_table.h | 0 indra/llcommon/stringize.h | 0 indra/llcommon/tests/StringVec.h | 0 indra/llcommon/tests/bitpack_test.cpp | 0 indra/llcommon/tests/commonmisc_test.cpp | 0 indra/llcommon/tests/listener.h | 0 indra/llcommon/tests/llallocator_heap_profile_test.cpp | 0 indra/llcommon/tests/llallocator_test.cpp | 0 indra/llcommon/tests/llbase64_test.cpp | 0 indra/llcommon/tests/lldate_test.cpp | 0 indra/llcommon/tests/lldependencies_test.cpp | 0 indra/llcommon/tests/llerror_test.cpp | 0 indra/llcommon/tests/lleventcoro_test.cpp | 0 indra/llcommon/tests/lleventdispatcher_test.cpp | 0 indra/llcommon/tests/lleventfilter_test.cpp | 0 indra/llcommon/tests/llframetimer_test.cpp | 0 indra/llcommon/tests/llinstancetracker_test.cpp | 0 indra/llcommon/tests/lllazy_test.cpp | 0 indra/llcommon/tests/llleap_test.cpp | 0 indra/llcommon/tests/llmemtype_test.cpp | 0 indra/llcommon/tests/llprocess_test.cpp | 0 indra/llcommon/tests/llprocessor_test.cpp | 0 indra/llcommon/tests/llrand_test.cpp | 0 indra/llcommon/tests/llsdserialize_test.cpp | 0 indra/llcommon/tests/llsingleton_test.cpp | 0 indra/llcommon/tests/llstreamqueue_test.cpp | 0 indra/llcommon/tests/llstring_test.cpp | 0 indra/llcommon/tests/lltreeiterators_test.cpp | 0 indra/llcommon/tests/lluri_test.cpp | 0 indra/llcommon/tests/reflection_test.cpp | 0 indra/llcommon/tests/stringize_test.cpp | 0 indra/llcommon/tests/wrapllerrs.h | 0 indra/llcommon/timer.h | 0 indra/llcommon/timing.cpp | 0 indra/llcommon/timing.h | 0 indra/llcommon/u64.cpp | 0 indra/llcommon/u64.h | 0 indra/llcorehttp/CMakeLists.txt | 0 indra/llcorehttp/_httpinternal.h | 0 indra/llcorehttp/_httplibcurl.cpp | 0 indra/llcorehttp/_httplibcurl.h | 0 indra/llcorehttp/_httpopcancel.cpp | 0 indra/llcorehttp/_httpopcancel.h | 0 indra/llcorehttp/_httpoperation.cpp | 0 indra/llcorehttp/_httpoperation.h | 0 indra/llcorehttp/_httpoprequest.cpp | 0 indra/llcorehttp/_httpoprequest.h | 0 indra/llcorehttp/_httpopsetget.cpp | 0 indra/llcorehttp/_httpopsetget.h | 0 indra/llcorehttp/_httpopsetpriority.cpp | 0 indra/llcorehttp/_httpopsetpriority.h | 0 indra/llcorehttp/_httppolicy.cpp | 0 indra/llcorehttp/_httppolicy.h | 0 indra/llcorehttp/_httppolicyclass.cpp | 0 indra/llcorehttp/_httppolicyclass.h | 0 indra/llcorehttp/_httppolicyglobal.cpp | 0 indra/llcorehttp/_httppolicyglobal.h | 0 indra/llcorehttp/_httpreadyqueue.h | 0 indra/llcorehttp/_httpreplyqueue.cpp | 0 indra/llcorehttp/_httpreplyqueue.h | 0 indra/llcorehttp/_httprequestqueue.cpp | 0 indra/llcorehttp/_httprequestqueue.h | 0 indra/llcorehttp/_httpretryqueue.h | 0 indra/llcorehttp/_httpservice.cpp | 0 indra/llcorehttp/_httpservice.h | 0 indra/llcorehttp/_mutex.h | 0 indra/llcorehttp/_refcounted.cpp | 0 indra/llcorehttp/_refcounted.h | 0 indra/llcorehttp/_thread.h | 0 indra/llcorehttp/bufferarray.cpp | 0 indra/llcorehttp/bufferarray.h | 0 indra/llcorehttp/bufferstream.cpp | 0 indra/llcorehttp/bufferstream.h | 0 indra/llcorehttp/examples/http_texture_load.cpp | 0 indra/llcorehttp/httpcommon.cpp | 0 indra/llcorehttp/httpcommon.h | 0 indra/llcorehttp/httphandler.h | 0 indra/llcorehttp/httpheaders.cpp | 0 indra/llcorehttp/httpheaders.h | 0 indra/llcorehttp/httpoptions.cpp | 0 indra/llcorehttp/httpoptions.h | 0 indra/llcorehttp/httprequest.cpp | 0 indra/llcorehttp/httprequest.h | 0 indra/llcorehttp/httpresponse.cpp | 0 indra/llcorehttp/httpresponse.h | 0 indra/llcorehttp/tests/llcorehttp_test.cpp | 0 indra/llcorehttp/tests/llcorehttp_test.h | 0 indra/llcorehttp/tests/test_allocator.cpp | 0 indra/llcorehttp/tests/test_allocator.h | 0 indra/llcorehttp/tests/test_bufferarray.hpp | 0 indra/llcorehttp/tests/test_bufferstream.hpp | 0 indra/llcorehttp/tests/test_httpheaders.hpp | 0 indra/llcorehttp/tests/test_httpoperation.hpp | 0 indra/llcorehttp/tests/test_httprequest.hpp | 0 indra/llcorehttp/tests/test_httprequestqueue.hpp | 0 indra/llcorehttp/tests/test_httpstatus.hpp | 0 indra/llcorehttp/tests/test_llcorehttp_peer.py | 0 indra/llcorehttp/tests/test_refcounted.hpp | 0 indra/llcorehttp/tests/testrunner.py | 0 indra/llcrashlogger/CMakeLists.txt | 0 indra/llcrashlogger/llcrashlogger.cpp | 0 indra/llcrashlogger/llcrashlogger.h | 0 indra/llimage/CMakeLists.txt | 0 indra/llimage/llimage.cpp | 0 indra/llimage/llimage.h | 0 indra/llimage/llimagebmp.cpp | 0 indra/llimage/llimagebmp.h | 0 indra/llimage/llimagedimensionsinfo.cpp | 0 indra/llimage/llimagedimensionsinfo.h | 0 indra/llimage/llimagedxt.cpp | 0 indra/llimage/llimagedxt.h | 0 indra/llimage/llimagej2c.cpp | 0 indra/llimage/llimagej2c.h | 0 indra/llimage/llimagejpeg.cpp | 0 indra/llimage/llimagejpeg.h | 0 indra/llimage/llimagepng.cpp | 0 indra/llimage/llimagepng.h | 0 indra/llimage/llimagetga.cpp | 0 indra/llimage/llimagetga.h | 0 indra/llimage/llimageworker.cpp | 0 indra/llimage/llimageworker.h | 0 indra/llimage/llmapimagetype.h | 0 indra/llimage/llpngwrapper.cpp | 0 indra/llimage/llpngwrapper.h | 0 indra/llimage/tests/llimageworker_test.cpp | 0 indra/llimagej2coj/CMakeLists.txt | 0 indra/llimagej2coj/llimagej2coj.cpp | 0 indra/llimagej2coj/llimagej2coj.h | 0 indra/llinventory/CMakeLists.txt | 0 indra/llinventory/llcategory.cpp | 0 indra/llinventory/llcategory.h | 0 indra/llinventory/lleconomy.cpp | 0 indra/llinventory/lleconomy.h | 0 indra/llinventory/llinventory.cpp | 0 indra/llinventory/llinventory.h | 0 indra/llinventory/llinventorydefines.cpp | 0 indra/llinventory/llinventorydefines.h | 0 indra/llinventory/llinventorytype.cpp | 0 indra/llinventory/llinventorytype.h | 0 indra/llinventory/lllandmark.cpp | 0 indra/llinventory/lllandmark.h | 0 indra/llinventory/llnotecard.cpp | 0 indra/llinventory/llnotecard.h | 0 indra/llinventory/llparcel.cpp | 0 indra/llinventory/llparcel.h | 0 indra/llinventory/llparcelflags.h | 0 indra/llinventory/llpermissions.cpp | 0 indra/llinventory/llpermissions.h | 0 indra/llinventory/llpermissionsflags.h | 0 indra/llinventory/llsaleinfo.cpp | 0 indra/llinventory/llsaleinfo.h | 0 indra/llinventory/lltransactionflags.cpp | 0 indra/llinventory/lltransactionflags.h | 0 indra/llinventory/lltransactiontypes.h | 0 indra/llinventory/lluserrelations.cpp | 0 indra/llinventory/lluserrelations.h | 0 indra/llinventory/tests/inventorymisc_test.cpp | 0 indra/llinventory/tests/llparcel_test.cpp | 0 indra/llkdu/CMakeLists.txt | 0 indra/llkdu/llimagej2ckdu.cpp | 0 indra/llkdu/llimagej2ckdu.h | 0 indra/llkdu/llkdumem.cpp | 0 indra/llkdu/llkdumem.h | 0 indra/llkdu/tests/llimagej2ckdu_test.cpp | 0 indra/llmath/CMakeLists.txt | 0 indra/llmath/camera.h | 0 indra/llmath/coordframe.h | 0 indra/llmath/llbbox.cpp | 0 indra/llmath/llbbox.h | 0 indra/llmath/llbboxlocal.cpp | 0 indra/llmath/llbboxlocal.h | 0 indra/llmath/llcalc.cpp | 0 indra/llmath/llcalc.h | 0 indra/llmath/llcalcparser.cpp | 0 indra/llmath/llcalcparser.h | 0 indra/llmath/llcamera.cpp | 0 indra/llmath/llcamera.h | 0 indra/llmath/llcoord.h | 0 indra/llmath/llcoordframe.cpp | 0 indra/llmath/llcoordframe.h | 0 indra/llmath/llinterp.h | 0 indra/llmath/llline.cpp | 0 indra/llmath/llline.h | 0 indra/llmath/llmath.h | 0 indra/llmath/llmatrix3a.cpp | 0 indra/llmath/llmatrix3a.h | 0 indra/llmath/llmatrix3a.inl | 0 indra/llmath/llmatrix4a.h | 0 indra/llmath/llmodularmath.cpp | 0 indra/llmath/llmodularmath.h | 0 indra/llmath/lloctree.h | 0 indra/llmath/llperlin.cpp | 0 indra/llmath/llperlin.h | 0 indra/llmath/llplane.h | 0 indra/llmath/llquantize.h | 0 indra/llmath/llquaternion.cpp | 0 indra/llmath/llquaternion.h | 0 indra/llmath/llquaternion2.h | 0 indra/llmath/llquaternion2.inl | 0 indra/llmath/llrect.cpp | 0 indra/llmath/llrect.h | 0 indra/llmath/llsdutil_math.cpp | 0 indra/llmath/llsdutil_math.h | 0 indra/llmath/llsimdmath.h | 0 indra/llmath/llsimdtypes.h | 0 indra/llmath/llsimdtypes.inl | 0 indra/llmath/llsphere.cpp | 0 indra/llmath/llsphere.h | 0 indra/llmath/lltreenode.h | 0 indra/llmath/llvector4a.cpp | 0 indra/llmath/llvector4a.h | 0 indra/llmath/llvector4a.inl | 0 indra/llmath/llvector4logical.h | 0 indra/llmath/llvolume.cpp | 0 indra/llmath/llvolume.h | 0 indra/llmath/llvolumemgr.cpp | 0 indra/llmath/llvolumemgr.h | 0 indra/llmath/llvolumeoctree.cpp | 0 indra/llmath/llvolumeoctree.h | 0 indra/llmath/m3math.cpp | 0 indra/llmath/m3math.h | 0 indra/llmath/m4math.cpp | 0 indra/llmath/m4math.h | 0 indra/llmath/raytrace.cpp | 0 indra/llmath/raytrace.h | 0 indra/llmath/tests/alignment_test.cpp | 0 indra/llmath/tests/llbbox_test.cpp | 0 indra/llmath/tests/llbboxlocal_test.cpp | 0 indra/llmath/tests/llmodularmath_test.cpp | 0 indra/llmath/tests/llquaternion_test.cpp | 0 indra/llmath/tests/llrect_test.cpp | 0 indra/llmath/tests/m3math_test.cpp | 0 indra/llmath/tests/mathmisc_test.cpp | 0 indra/llmath/tests/v2math_test.cpp | 0 indra/llmath/tests/v3color_test.cpp | 0 indra/llmath/tests/v3dmath_test.cpp | 0 indra/llmath/tests/v3math_test.cpp | 0 indra/llmath/tests/v4color_test.cpp | 0 indra/llmath/tests/v4coloru_test.cpp | 0 indra/llmath/tests/v4math_test.cpp | 0 indra/llmath/tests/xform_test.cpp | 0 indra/llmath/v2math.cpp | 0 indra/llmath/v2math.h | 0 indra/llmath/v3color.cpp | 0 indra/llmath/v3color.h | 0 indra/llmath/v3dmath.cpp | 0 indra/llmath/v3dmath.h | 0 indra/llmath/v3math.cpp | 0 indra/llmath/v3math.h | 0 indra/llmath/v4color.cpp | 0 indra/llmath/v4color.h | 0 indra/llmath/v4coloru.cpp | 0 indra/llmath/v4coloru.h | 0 indra/llmath/v4math.cpp | 0 indra/llmath/v4math.h | 0 indra/llmath/xform.cpp | 0 indra/llmath/xform.h | 0 indra/llmessage/CMakeLists.txt | 0 indra/llmessage/llares.cpp | 0 indra/llmessage/llares.h | 0 indra/llmessage/llareslistener.cpp | 0 indra/llmessage/llareslistener.h | 0 indra/llmessage/llassetstorage.cpp | 0 indra/llmessage/llassetstorage.h | 0 indra/llmessage/llavatarnamecache.cpp | 0 indra/llmessage/llavatarnamecache.h | 0 indra/llmessage/llblowfishcipher.cpp | 0 indra/llmessage/llblowfishcipher.h | 0 indra/llmessage/llbuffer.cpp | 0 indra/llmessage/llbuffer.h | 0 indra/llmessage/llbufferstream.cpp | 0 indra/llmessage/llbufferstream.h | 0 indra/llmessage/llcachename.cpp | 0 indra/llmessage/llcachename.h | 0 indra/llmessage/llchainio.cpp | 0 indra/llmessage/llchainio.h | 0 indra/llmessage/llcipher.h | 0 indra/llmessage/llcircuit.cpp | 0 indra/llmessage/llcircuit.h | 0 indra/llmessage/llclassifiedflags.cpp | 0 indra/llmessage/llclassifiedflags.h | 0 indra/llmessage/llcurl.cpp | 0 indra/llmessage/llcurl.h | 0 indra/llmessage/lldatapacker.cpp | 0 indra/llmessage/lldatapacker.h | 0 indra/llmessage/lldbstrings.h | 0 indra/llmessage/lldispatcher.cpp | 0 indra/llmessage/lldispatcher.h | 0 indra/llmessage/lleventflags.h | 0 indra/llmessage/llfiltersd2xmlrpc.cpp | 0 indra/llmessage/llfiltersd2xmlrpc.h | 0 indra/llmessage/llfollowcamparams.h | 0 indra/llmessage/llhost.cpp | 0 indra/llmessage/llhost.h | 0 indra/llmessage/llhttpassetstorage.cpp | 0 indra/llmessage/llhttpassetstorage.h | 0 indra/llmessage/llhttpclient.cpp | 0 indra/llmessage/llhttpclient.h | 0 indra/llmessage/llhttpclientadapter.cpp | 0 indra/llmessage/llhttpclientadapter.h | 0 indra/llmessage/llhttpclientinterface.h | 0 indra/llmessage/llhttpnode.cpp | 0 indra/llmessage/llhttpnode.h | 0 indra/llmessage/llhttpnodeadapter.h | 0 indra/llmessage/llhttpsender.cpp | 0 indra/llmessage/llhttpsender.h | 0 indra/llmessage/llinstantmessage.cpp | 0 indra/llmessage/llinstantmessage.h | 0 indra/llmessage/llinvite.h | 0 indra/llmessage/lliobuffer.cpp | 0 indra/llmessage/lliobuffer.h | 0 indra/llmessage/lliohttpserver.cpp | 0 indra/llmessage/lliohttpserver.h | 0 indra/llmessage/lliopipe.cpp | 0 indra/llmessage/lliopipe.h | 0 indra/llmessage/lliosocket.cpp | 0 indra/llmessage/lliosocket.h | 0 indra/llmessage/llioutil.cpp | 0 indra/llmessage/llioutil.h | 0 indra/llmessage/llloginflags.h | 0 indra/llmessage/llmail.cpp | 0 indra/llmessage/llmail.h | 0 indra/llmessage/llmessagebuilder.cpp | 0 indra/llmessage/llmessagebuilder.h | 0 indra/llmessage/llmessageconfig.cpp | 0 indra/llmessage/llmessageconfig.h | 0 indra/llmessage/llmessagereader.cpp | 0 indra/llmessage/llmessagereader.h | 0 indra/llmessage/llmessagesenderinterface.h | 0 indra/llmessage/llmessagetemplate.cpp | 0 indra/llmessage/llmessagetemplate.h | 0 indra/llmessage/llmessagetemplateparser.cpp | 0 indra/llmessage/llmessagetemplateparser.h | 0 indra/llmessage/llmessagethrottle.cpp | 0 indra/llmessage/llmessagethrottle.h | 0 indra/llmessage/llmime.cpp | 0 indra/llmessage/llmime.h | 0 indra/llmessage/llmsgvariabletype.h | 0 indra/llmessage/llnamevalue.cpp | 0 indra/llmessage/llnamevalue.h | 0 indra/llmessage/llnullcipher.cpp | 0 indra/llmessage/llnullcipher.h | 0 indra/llmessage/llpacketack.cpp | 0 indra/llmessage/llpacketack.h | 0 indra/llmessage/llpacketbuffer.cpp | 0 indra/llmessage/llpacketbuffer.h | 0 indra/llmessage/llpacketring.cpp | 0 indra/llmessage/llpacketring.h | 0 indra/llmessage/llpartdata.cpp | 0 indra/llmessage/llpartdata.h | 0 indra/llmessage/llproxy.cpp | 0 indra/llmessage/llproxy.h | 0 indra/llmessage/llpumpio.cpp | 0 indra/llmessage/llpumpio.h | 0 indra/llmessage/llqueryflags.h | 0 indra/llmessage/llregionflags.h | 0 indra/llmessage/llregionhandle.h | 0 indra/llmessage/llregionpresenceverifier.cpp | 0 indra/llmessage/llregionpresenceverifier.h | 0 indra/llmessage/llsdappservices.cpp | 0 indra/llmessage/llsdappservices.h | 0 indra/llmessage/llsdhttpserver.cpp | 0 indra/llmessage/llsdhttpserver.h | 0 indra/llmessage/llsdmessage.cpp | 0 indra/llmessage/llsdmessage.h | 0 indra/llmessage/llsdmessagebuilder.cpp | 0 indra/llmessage/llsdmessagebuilder.h | 0 indra/llmessage/llsdmessagereader.cpp | 0 indra/llmessage/llsdmessagereader.h | 0 indra/llmessage/llsdrpcclient.cpp | 0 indra/llmessage/llsdrpcclient.h | 0 indra/llmessage/llsdrpcserver.cpp | 0 indra/llmessage/llsdrpcserver.h | 0 indra/llmessage/llservice.cpp | 0 indra/llmessage/llservice.h | 0 indra/llmessage/llservicebuilder.cpp | 0 indra/llmessage/llservicebuilder.h | 0 indra/llmessage/llstoredmessage.cpp | 0 indra/llmessage/llstoredmessage.h | 0 indra/llmessage/lltaskname.h | 0 indra/llmessage/llteleportflags.h | 0 indra/llmessage/lltemplatemessagebuilder.cpp | 0 indra/llmessage/lltemplatemessagebuilder.h | 0 indra/llmessage/lltemplatemessagedispatcher.cpp | 0 indra/llmessage/lltemplatemessagedispatcher.h | 0 indra/llmessage/lltemplatemessagereader.cpp | 0 indra/llmessage/lltemplatemessagereader.h | 0 indra/llmessage/llthrottle.cpp | 0 indra/llmessage/llthrottle.h | 0 indra/llmessage/lltransfermanager.cpp | 0 indra/llmessage/lltransfermanager.h | 0 indra/llmessage/lltransfersourceasset.cpp | 0 indra/llmessage/lltransfersourceasset.h | 0 indra/llmessage/lltransfersourcefile.cpp | 0 indra/llmessage/lltransfersourcefile.h | 0 indra/llmessage/lltransfertargetfile.cpp | 0 indra/llmessage/lltransfertargetfile.h | 0 indra/llmessage/lltransfertargetvfile.cpp | 0 indra/llmessage/lltransfertargetvfile.h | 0 indra/llmessage/lltrustedmessageservice.cpp | 0 indra/llmessage/lltrustedmessageservice.h | 0 indra/llmessage/llurlrequest.cpp | 0 indra/llmessage/llurlrequest.h | 0 indra/llmessage/lluseroperation.cpp | 0 indra/llmessage/lluseroperation.h | 0 indra/llmessage/llvehicleparams.h | 0 indra/llmessage/llxfer.cpp | 0 indra/llmessage/llxfer.h | 0 indra/llmessage/llxfer_file.cpp | 0 indra/llmessage/llxfer_file.h | 0 indra/llmessage/llxfer_mem.cpp | 0 indra/llmessage/llxfer_mem.h | 0 indra/llmessage/llxfer_vfile.cpp | 0 indra/llmessage/llxfer_vfile.h | 0 indra/llmessage/llxfermanager.cpp | 0 indra/llmessage/llxfermanager.h | 0 indra/llmessage/llxorcipher.cpp | 0 indra/llmessage/llxorcipher.h | 0 indra/llmessage/machine.cpp | 0 indra/llmessage/machine.h | 0 indra/llmessage/mean_collision_data.h | 0 indra/llmessage/message.cpp | 0 indra/llmessage/message.h | 0 indra/llmessage/message_prehash.cpp | 0 indra/llmessage/message_prehash.h | 0 indra/llmessage/message_string_table.cpp | 0 indra/llmessage/net.cpp | 0 indra/llmessage/net.h | 0 indra/llmessage/partsyspacket.cpp | 0 indra/llmessage/partsyspacket.h | 0 indra/llmessage/patch_code.cpp | 0 indra/llmessage/patch_code.h | 0 indra/llmessage/patch_dct.cpp | 0 indra/llmessage/patch_dct.h | 0 indra/llmessage/patch_idct.cpp | 0 indra/llmessage/sound_ids.cpp | 0 indra/llmessage/sound_ids.h | 0 indra/llmessage/tests/commtest.h | 0 indra/llmessage/tests/llareslistener_test.cpp | 0 indra/llmessage/tests/llavatarnamecache_test.cpp | 0 indra/llmessage/tests/llcurl_stub.cpp | 0 indra/llmessage/tests/llhost_test.cpp | 0 indra/llmessage/tests/llhttpclient_test.cpp | 0 indra/llmessage/tests/llhttpclientadapter_test.cpp | 0 indra/llmessage/tests/llmime_test.cpp | 0 indra/llmessage/tests/llmockhttpclient.h | 0 indra/llmessage/tests/llnamevalue_test.cpp | 0 indra/llmessage/tests/llpartdata_test.cpp | 0 indra/llmessage/tests/llregionpresenceverifier_test.cpp | 0 indra/llmessage/tests/llsdmessage_test.cpp | 0 indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp | 0 indra/llmessage/tests/lltesthttpclientadapter.cpp | 0 indra/llmessage/tests/lltesthttpclientadapter.h | 0 indra/llmessage/tests/lltestmessagesender.cpp | 0 indra/llmessage/tests/lltestmessagesender.h | 0 indra/llmessage/tests/lltrustedmessageservice_test.cpp | 0 indra/llmessage/tests/llxfer_file_test.cpp | 0 indra/llmessage/tests/networkio.h | 0 indra/llmessage/tests/test_llsdmessage_peer.py | 0 indra/llmessage/tests/testrunner.py | 0 indra/llplugin/CMakeLists.txt | 0 indra/llplugin/llpluginclassmedia.cpp | 0 indra/llplugin/llpluginclassmedia.h | 0 indra/llplugin/llpluginclassmediaowner.h | 0 indra/llplugin/llplugincookiestore.cpp | 0 indra/llplugin/llplugincookiestore.h | 0 indra/llplugin/llplugininstance.cpp | 0 indra/llplugin/llplugininstance.h | 0 indra/llplugin/llpluginmessage.cpp | 0 indra/llplugin/llpluginmessage.h | 0 indra/llplugin/llpluginmessageclasses.h | 0 indra/llplugin/llpluginmessagepipe.cpp | 0 indra/llplugin/llpluginmessagepipe.h | 0 indra/llplugin/llpluginprocesschild.cpp | 0 indra/llplugin/llpluginprocesschild.h | 0 indra/llplugin/llpluginprocessparent.cpp | 0 indra/llplugin/llpluginprocessparent.h | 0 indra/llplugin/llpluginsharedmemory.cpp | 0 indra/llplugin/llpluginsharedmemory.h | 0 indra/llplugin/slplugin/CMakeLists.txt | 0 indra/llplugin/slplugin/slplugin-objc.h | 0 indra/llplugin/slplugin/slplugin-objc.mm | 0 indra/llplugin/slplugin/slplugin.cpp | 0 indra/llplugin/slplugin/slplugin_info.plist | 0 indra/llplugin/tests/llplugincookiestore_test.cpp | 0 indra/llprimitive/CMakeLists.txt | 0 indra/llprimitive/legacy_object_types.h | 0 indra/llprimitive/llmaterialtable.cpp | 0 indra/llprimitive/llmaterialtable.h | 0 indra/llprimitive/llmediaentry.cpp | 0 indra/llprimitive/llmediaentry.h | 0 indra/llprimitive/llmodel.cpp | 0 indra/llprimitive/llmodel.h | 0 indra/llprimitive/llprimitive.cpp | 0 indra/llprimitive/llprimitive.h | 0 indra/llprimitive/llprimlinkinfo.h | 0 indra/llprimitive/llprimtexturelist.cpp | 0 indra/llprimitive/llprimtexturelist.h | 0 indra/llprimitive/lltextureanim.cpp | 0 indra/llprimitive/lltextureanim.h | 0 indra/llprimitive/lltextureentry.cpp | 0 indra/llprimitive/lltextureentry.h | 0 indra/llprimitive/lltree_common.h | 0 indra/llprimitive/lltreeparams.cpp | 0 indra/llprimitive/lltreeparams.h | 0 indra/llprimitive/llvolumemessage.cpp | 0 indra/llprimitive/llvolumemessage.h | 0 indra/llprimitive/llvolumexml.cpp | 0 indra/llprimitive/llvolumexml.h | 0 indra/llprimitive/material_codes.cpp | 0 indra/llprimitive/material_codes.h | 0 indra/llprimitive/object_flags.h | 0 indra/llprimitive/tests/llmediaentry_test.cpp | 0 indra/llprimitive/tests/llmessagesystem_stub.cpp | 0 indra/llprimitive/tests/llprimitive_test.cpp | 0 indra/llrender/CMakeLists.txt | 0 indra/llrender/llcubemap.cpp | 0 indra/llrender/llcubemap.h | 0 indra/llrender/llfontbitmapcache.cpp | 0 indra/llrender/llfontbitmapcache.h | 0 indra/llrender/llfontfreetype.cpp | 0 indra/llrender/llfontfreetype.h | 0 indra/llrender/llfontgl.cpp | 0 indra/llrender/llfontgl.h | 0 indra/llrender/llfontregistry.cpp | 0 indra/llrender/llfontregistry.h | 0 indra/llrender/llgl.cpp | 0 indra/llrender/llgl.h | 0 indra/llrender/llgldbg.cpp | 0 indra/llrender/llgldbg.h | 0 indra/llrender/llglheaders.h | 0 indra/llrender/llglslshader.cpp | 0 indra/llrender/llglslshader.h | 0 indra/llrender/llglstates.h | 0 indra/llrender/llgltypes.h | 0 indra/llrender/llimagegl.cpp | 0 indra/llrender/llimagegl.h | 0 indra/llrender/llpostprocess.cpp | 0 indra/llrender/llpostprocess.h | 0 indra/llrender/llrender.cpp | 0 indra/llrender/llrender.h | 0 indra/llrender/llrendernavprim.cpp | 0 indra/llrender/llrendernavprim.h | 0 indra/llrender/llrendersphere.cpp | 0 indra/llrender/llrendersphere.h | 0 indra/llrender/llrendertarget.cpp | 0 indra/llrender/llrendertarget.h | 0 indra/llrender/llshadermgr.cpp | 0 indra/llrender/llshadermgr.h | 0 indra/llrender/lltexture.cpp | 0 indra/llrender/lltexture.h | 0 indra/llrender/llvertexbuffer.cpp | 0 indra/llrender/llvertexbuffer.h | 0 indra/llui/CMakeLists.txt | 0 indra/llui/llaccordionctrl.cpp | 0 indra/llui/llaccordionctrl.h | 0 indra/llui/llaccordionctrltab.cpp | 0 indra/llui/llaccordionctrltab.h | 0 indra/llui/llbadge.cpp | 0 indra/llui/llbadge.h | 0 indra/llui/llbadgeholder.cpp | 0 indra/llui/llbadgeholder.h | 0 indra/llui/llbadgeowner.cpp | 0 indra/llui/llbadgeowner.h | 0 indra/llui/llbutton.cpp | 0 indra/llui/llbutton.h | 0 indra/llui/llcallbackmap.h | 0 indra/llui/llchatentry.cpp | 0 indra/llui/llchatentry.h | 0 indra/llui/llcheckboxctrl.cpp | 0 indra/llui/llcheckboxctrl.h | 0 indra/llui/llclipboard.cpp | 0 indra/llui/llclipboard.h | 0 indra/llui/llcombobox.cpp | 0 indra/llui/llcombobox.h | 0 indra/llui/llcommandmanager.cpp | 0 indra/llui/llcommandmanager.h | 0 indra/llui/llconsole.cpp | 0 indra/llui/llconsole.h | 0 indra/llui/llcontainerview.cpp | 0 indra/llui/llcontainerview.h | 0 indra/llui/llctrlselectioninterface.cpp | 0 indra/llui/llctrlselectioninterface.h | 0 indra/llui/lldockablefloater.cpp | 0 indra/llui/lldockablefloater.h | 0 indra/llui/lldockcontrol.cpp | 0 indra/llui/lldockcontrol.h | 0 indra/llui/lldraghandle.cpp | 0 indra/llui/lldraghandle.h | 0 indra/llui/lleditmenuhandler.cpp | 0 indra/llui/lleditmenuhandler.h | 0 indra/llui/llf32uictrl.cpp | 0 indra/llui/llf32uictrl.h | 0 indra/llui/llfiltereditor.cpp | 0 indra/llui/llfiltereditor.h | 0 indra/llui/llflashtimer.cpp | 0 indra/llui/llflashtimer.h | 0 indra/llui/llflatlistview.cpp | 0 indra/llui/llflatlistview.h | 0 indra/llui/llfloater.cpp | 0 indra/llui/llfloater.h | 0 indra/llui/llfloaterreg.cpp | 0 indra/llui/llfloaterreg.h | 0 indra/llui/llfloaterreglistener.cpp | 0 indra/llui/llfloaterreglistener.h | 0 indra/llui/llflyoutbutton.cpp | 0 indra/llui/llflyoutbutton.h | 0 indra/llui/llfocusmgr.cpp | 0 indra/llui/llfocusmgr.h | 0 indra/llui/llfolderview.cpp | 0 indra/llui/llfolderview.h | 0 indra/llui/llfolderviewmodel.cpp | 0 indra/llui/llfolderviewmodel.h | 0 indra/llui/llfunctorregistry.cpp | 0 indra/llui/llfunctorregistry.h | 0 indra/llui/llhelp.h | 0 indra/llui/lliconctrl.cpp | 0 indra/llui/lliconctrl.h | 0 indra/llui/llkeywords.cpp | 0 indra/llui/llkeywords.h | 0 indra/llui/lllayoutstack.cpp | 0 indra/llui/lllayoutstack.h | 0 indra/llui/lllazyvalue.h | 0 indra/llui/lllineeditor.cpp | 0 indra/llui/lllineeditor.h | 0 indra/llui/llloadingindicator.cpp | 0 indra/llui/llloadingindicator.h | 0 indra/llui/lllocalcliprect.cpp | 0 indra/llui/lllocalcliprect.h | 0 indra/llui/llmenubutton.cpp | 0 indra/llui/llmenubutton.h | 0 indra/llui/llmenugl.cpp | 0 indra/llui/llmenugl.h | 0 indra/llui/llmodaldialog.cpp | 0 indra/llui/llmodaldialog.h | 0 indra/llui/llmultifloater.cpp | 0 indra/llui/llmultifloater.h | 0 indra/llui/llmultislider.cpp | 0 indra/llui/llmultislider.h | 0 indra/llui/llmultisliderctrl.cpp | 0 indra/llui/llmultisliderctrl.h | 0 indra/llui/llnotificationptr.h | 0 indra/llui/llnotifications.cpp | 0 indra/llui/llnotifications.h | 0 indra/llui/llnotificationsutil.cpp | 0 indra/llui/llnotificationsutil.h | 0 indra/llui/llnotificationtemplate.h | 0 indra/llui/llnotificationvisibilityrule.h | 0 indra/llui/llpanel.cpp | 0 indra/llui/llpanel.h | 0 indra/llui/llprogressbar.cpp | 0 indra/llui/llprogressbar.h | 0 indra/llui/llradiogroup.cpp | 0 indra/llui/llradiogroup.h | 0 indra/llui/llresizebar.cpp | 0 indra/llui/llresizebar.h | 0 indra/llui/llresizehandle.cpp | 0 indra/llui/llresizehandle.h | 0 indra/llui/llresmgr.cpp | 0 indra/llui/llresmgr.h | 0 indra/llui/llrngwriter.cpp | 0 indra/llui/llrngwriter.h | 0 indra/llui/llscrollbar.cpp | 0 indra/llui/llscrollbar.h | 0 indra/llui/llscrollcontainer.cpp | 0 indra/llui/llscrollcontainer.h | 0 indra/llui/llscrollingpanellist.cpp | 0 indra/llui/llscrollingpanellist.h | 0 indra/llui/llscrolllistcell.cpp | 0 indra/llui/llscrolllistcell.h | 0 indra/llui/llscrolllistcolumn.cpp | 0 indra/llui/llscrolllistcolumn.h | 0 indra/llui/llscrolllistctrl.cpp | 0 indra/llui/llscrolllistctrl.h | 0 indra/llui/llscrolllistitem.cpp | 0 indra/llui/llscrolllistitem.h | 0 indra/llui/llsearcheditor.cpp | 0 indra/llui/llsearcheditor.h | 0 indra/llui/llslider.cpp | 0 indra/llui/llslider.h | 0 indra/llui/llsliderctrl.cpp | 0 indra/llui/llsliderctrl.h | 0 indra/llui/llspellcheck.cpp | 0 indra/llui/llspellcheck.h | 0 indra/llui/llspellcheckmenuhandler.h | 0 indra/llui/llspinctrl.cpp | 0 indra/llui/llspinctrl.h | 0 indra/llui/llstatbar.cpp | 0 indra/llui/llstatbar.h | 0 indra/llui/llstatgraph.cpp | 0 indra/llui/llstatgraph.h | 0 indra/llui/llstatview.cpp | 0 indra/llui/llstatview.h | 0 indra/llui/llstyle.cpp | 0 indra/llui/llstyle.h | 0 indra/llui/lltabcontainer.cpp | 0 indra/llui/lltabcontainer.h | 0 indra/llui/lltextbase.cpp | 0 indra/llui/lltextbase.h | 0 indra/llui/lltextbox.cpp | 0 indra/llui/lltextbox.h | 0 indra/llui/lltexteditor.cpp | 0 indra/llui/lltexteditor.h | 0 indra/llui/lltextparser.cpp | 0 indra/llui/lltextparser.h | 0 indra/llui/lltextutil.cpp | 0 indra/llui/lltextutil.h | 0 indra/llui/lltextvalidate.cpp | 0 indra/llui/lltextvalidate.h | 0 indra/llui/lltimectrl.cpp | 0 indra/llui/lltimectrl.h | 0 indra/llui/lltoggleablemenu.cpp | 0 indra/llui/lltoggleablemenu.h | 0 indra/llui/lltoolbar.cpp | 0 indra/llui/lltoolbar.h | 0 indra/llui/lltooltip.cpp | 0 indra/llui/lltooltip.h | 0 indra/llui/lltrans.cpp | 0 indra/llui/lltrans.h | 0 indra/llui/lltransutil.cpp | 0 indra/llui/lltransutil.h | 0 indra/llui/llui.cpp | 0 indra/llui/llui.h | 0 indra/llui/lluicolor.cpp | 0 indra/llui/lluicolor.h | 0 indra/llui/lluicolortable.cpp | 0 indra/llui/lluicolortable.h | 0 indra/llui/lluiconstants.h | 0 indra/llui/lluictrl.cpp | 0 indra/llui/lluictrl.h | 0 indra/llui/lluictrlfactory.cpp | 0 indra/llui/lluictrlfactory.h | 0 indra/llui/lluifwd.h | 0 indra/llui/lluiimage.cpp | 0 indra/llui/lluiimage.h | 0 indra/llui/lluistring.cpp | 0 indra/llui/lluistring.h | 0 indra/llui/llundo.cpp | 0 indra/llui/llundo.h | 0 indra/llui/llurlaction.cpp | 0 indra/llui/llurlaction.h | 0 indra/llui/llurlentry.cpp | 0 indra/llui/llurlentry.h | 0 indra/llui/llurlmatch.cpp | 0 indra/llui/llurlmatch.h | 0 indra/llui/llurlregistry.cpp | 0 indra/llui/llurlregistry.h | 0 indra/llui/llview.cpp | 0 indra/llui/llview.h | 0 indra/llui/llviewborder.cpp | 0 indra/llui/llviewborder.h | 0 indra/llui/llviewinject.cpp | 0 indra/llui/llviewinject.h | 0 indra/llui/llviewmodel.cpp | 0 indra/llui/llviewmodel.h | 0 indra/llui/llviewquery.cpp | 0 indra/llui/llviewquery.h | 0 indra/llui/llwindowshade.cpp | 0 indra/llui/llwindowshade.h | 0 indra/llui/llxuiparser.cpp | 0 indra/llui/llxuiparser.h | 0 indra/llui/tests/llurlentry_stub.cpp | 0 indra/llui/tests/llurlentry_test.cpp | 0 indra/llui/tests/llurlmatch_test.cpp | 0 indra/llvfs/CMakeLists.txt | 0 indra/llvfs/lldir.cpp | 0 indra/llvfs/lldir.h | 0 indra/llvfs/lldir_linux.cpp | 0 indra/llvfs/lldir_linux.h | 0 indra/llvfs/lldir_mac.cpp | 0 indra/llvfs/lldir_mac.h | 0 indra/llvfs/lldir_solaris.cpp | 0 indra/llvfs/lldir_solaris.h | 0 indra/llvfs/lldir_win32.cpp | 0 indra/llvfs/lldir_win32.h | 0 indra/llvfs/lldirguard.h | 0 indra/llvfs/lldiriterator.cpp | 0 indra/llvfs/lldiriterator.h | 0 indra/llvfs/lllfsthread.cpp | 0 indra/llvfs/lllfsthread.h | 0 indra/llvfs/llpidlock.cpp | 0 indra/llvfs/llpidlock.h | 0 indra/llvfs/llvfile.cpp | 0 indra/llvfs/llvfile.h | 0 indra/llvfs/llvfs.cpp | 0 indra/llvfs/llvfs.h | 0 indra/llvfs/llvfs_objc.h | 0 indra/llvfs/llvfs_objc.mm | 0 indra/llvfs/llvfsthread.cpp | 0 indra/llvfs/llvfsthread.h | 0 indra/llvfs/tests/lldir_test.cpp | 0 indra/llvfs/tests/lldiriterator_test.cpp | 0 indra/llwindow/CMakeLists.txt | 0 indra/llwindow/GL/glh_extensions.h | 0 indra/llwindow/GL/glh_genext.h | 0 indra/llwindow/lldragdropwin32.cpp | 0 indra/llwindow/lldragdropwin32.h | 0 indra/llwindow/lldxhardware.cpp | 0 indra/llwindow/lldxhardware.h | 0 indra/llwindow/llkeyboard.cpp | 0 indra/llwindow/llkeyboard.h | 0 indra/llwindow/llkeyboardheadless.cpp | 0 indra/llwindow/llkeyboardheadless.h | 0 indra/llwindow/llkeyboardmacosx.cpp | 0 indra/llwindow/llkeyboardmacosx.h | 0 indra/llwindow/llkeyboardsdl.cpp | 0 indra/llwindow/llkeyboardsdl.h | 0 indra/llwindow/llkeyboardwin32.cpp | 0 indra/llwindow/llkeyboardwin32.h | 0 indra/llwindow/llmousehandler.cpp | 0 indra/llwindow/llmousehandler.h | 0 indra/llwindow/llpreeditor.h | 0 indra/llwindow/llwindow.cpp | 0 indra/llwindow/llwindow.h | 0 indra/llwindow/llwindowcallbacks.cpp | 0 indra/llwindow/llwindowcallbacks.h | 0 indra/llwindow/llwindowheadless.cpp | 0 indra/llwindow/llwindowheadless.h | 0 indra/llwindow/llwindowmacosx-objc.h | 0 indra/llwindow/llwindowmacosx-objc.mm | 0 indra/llwindow/llwindowmacosx.cpp | 0 indra/llwindow/llwindowmacosx.h | 0 indra/llwindow/llwindowmesaheadless.cpp | 0 indra/llwindow/llwindowmesaheadless.h | 0 indra/llwindow/llwindowsdl.cpp | 0 indra/llwindow/llwindowsdl.h | 0 indra/llwindow/llwindowwin32.cpp | 0 indra/llwindow/llwindowwin32.h | 0 indra/llxml/CMakeLists.txt | 0 indra/llxml/llcontrol.cpp | 0 indra/llxml/llcontrol.h | 0 indra/llxml/llcontrolgroupreader.h | 0 indra/llxml/llxmlnode.cpp | 0 indra/llxml/llxmlnode.h | 0 indra/llxml/llxmlparser.cpp | 0 indra/llxml/llxmlparser.h | 0 indra/llxml/llxmltree.cpp | 0 indra/llxml/llxmltree.h | 0 indra/llxml/tests/llcontrol_test.cpp | 0 indra/lscript/CMakeLists.txt | 0 indra/lscript/llscriptresource.h | 0 indra/lscript/llscriptresourceconsumer.h | 0 indra/lscript/llscriptresourcepool.h | 0 indra/lscript/lscript_alloc.h | 0 indra/lscript/lscript_byteconvert.h | 0 indra/lscript/lscript_byteformat.h | 0 indra/lscript/lscript_compile/CMakeLists.txt | 0 indra/lscript/lscript_compile/indra.l | 0 indra/lscript/lscript_compile/indra.y | 0 indra/lscript/lscript_compile/lscript_alloc.cpp | 0 indra/lscript/lscript_compile/lscript_bytecode.cpp | 0 indra/lscript/lscript_compile/lscript_bytecode.h | 0 indra/lscript/lscript_compile/lscript_error.cpp | 0 indra/lscript/lscript_compile/lscript_error.h | 0 indra/lscript/lscript_compile/lscript_heap.cpp | 0 indra/lscript/lscript_compile/lscript_heap.h | 0 indra/lscript/lscript_compile/lscript_resource.cpp | 0 indra/lscript/lscript_compile/lscript_resource.h | 0 indra/lscript/lscript_compile/lscript_scope.cpp | 0 indra/lscript/lscript_compile/lscript_scope.h | 0 indra/lscript/lscript_compile/lscript_tree.cpp | 0 indra/lscript/lscript_compile/lscript_tree.h | 0 indra/lscript/lscript_compile/lscript_typecheck.cpp | 0 indra/lscript/lscript_compile/lscript_typecheck.h | 0 indra/lscript/lscript_compile/windows/unistd.h | 0 indra/lscript/lscript_execute.h | 0 indra/lscript/lscript_execute/CMakeLists.txt | 0 indra/lscript/lscript_execute/llscriptresource.cpp | 0 indra/lscript/lscript_execute/llscriptresourceconsumer.cpp | 0 indra/lscript/lscript_execute/llscriptresourcepool.cpp | 0 indra/lscript/lscript_execute/lscript_execute.cpp | 0 indra/lscript/lscript_execute/lscript_heapruntime.cpp | 0 indra/lscript/lscript_execute/lscript_heapruntime.h | 0 indra/lscript/lscript_execute/lscript_readlso.cpp | 0 indra/lscript/lscript_execute/lscript_readlso.h | 0 indra/lscript/lscript_export.h | 0 indra/lscript/lscript_http.h | 0 indra/lscript/lscript_library.h | 0 indra/lscript/lscript_library/CMakeLists.txt | 0 indra/lscript/lscript_library/lscript_alloc.cpp | 0 indra/lscript/lscript_library/lscript_export.cpp | 0 indra/lscript/lscript_library/lscript_library.cpp | 0 indra/lscript/lscript_rt_interface.h | 0 indra/mac_crash_logger/CMakeLists.txt | 0 indra/mac_crash_logger/CrashReporter.nib | Bin indra/mac_crash_logger/CrashReporter.xib | 0 indra/mac_crash_logger/Info.plist | 0 indra/mac_crash_logger/llcrashloggermac.cpp | 0 indra/mac_crash_logger/llcrashloggermac.h | 0 indra/mac_crash_logger/llcrashloggermacdelegate.h | 0 indra/mac_crash_logger/llcrashloggermacdelegate.mm | 0 indra/mac_crash_logger/mac_crash_logger.cpp | 0 indra/mac_updater/AutoUpdater.nib/classes.nib | 0 indra/mac_updater/AutoUpdater.nib/info.nib | 0 indra/mac_updater/AutoUpdater.nib/objects.xib | 0 indra/mac_updater/CMakeLists.txt | 0 indra/mac_updater/Info.plist | 0 indra/mac_updater/mac_updater.cpp | 0 indra/mac_updater/mac_updater.h | 0 indra/media_plugins/CMakeLists.txt | 0 indra/media_plugins/base/CMakeLists.txt | 0 indra/media_plugins/base/media_plugin_base.cpp | 0 indra/media_plugins/base/media_plugin_base.exp | 0 indra/media_plugins/base/media_plugin_base.h | 0 indra/media_plugins/example/CMakeLists.txt | 0 indra/media_plugins/example/media_plugin_example.cpp | 0 indra/media_plugins/gstreamer010/CMakeLists.txt | 0 indra/media_plugins/gstreamer010/llmediaimplgstreamer.h | 0 .../gstreamer010/llmediaimplgstreamer_syms.cpp | 0 .../media_plugins/gstreamer010/llmediaimplgstreamer_syms.h | 0 .../gstreamer010/llmediaimplgstreamer_syms_raw.inc | 0 .../gstreamer010/llmediaimplgstreamer_syms_rawv.inc | 0 .../gstreamer010/llmediaimplgstreamertriviallogging.h | 0 .../gstreamer010/llmediaimplgstreamervidplug.cpp | 0 .../gstreamer010/llmediaimplgstreamervidplug.h | 0 .../gstreamer010/media_plugin_gstreamer010.cpp | 0 indra/media_plugins/quicktime/CMakeLists.txt | 0 indra/media_plugins/quicktime/media_plugin_quicktime.cpp | 0 indra/media_plugins/webkit/CMakeLists.txt | 0 indra/media_plugins/webkit/dummy_volume_catcher.cpp | 0 indra/media_plugins/webkit/linux_volume_catcher.cpp | 0 indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc | 0 .../webkit/linux_volume_catcher_paglib_syms.inc | 0 indra/media_plugins/webkit/mac_volume_catcher.cpp | 0 indra/media_plugins/webkit/media_plugin_webkit.cpp | 0 indra/media_plugins/webkit/volume_catcher.h | 0 indra/media_plugins/webkit/windows_volume_catcher.cpp | 0 indra/media_plugins/winmmshim/CMakeLists.txt | 0 indra/media_plugins/winmmshim/forwarding_api.cpp | 0 indra/media_plugins/winmmshim/forwarding_api.h | 0 indra/media_plugins/winmmshim/winmm.def | 0 indra/media_plugins/winmmshim/winmm_shim.cpp | 0 indra/newview/CMakeLists.txt | 0 indra/newview/English.lproj/InfoPlist.strings | 0 indra/newview/English.lproj/language.txt | 0 indra/newview/German.lproj/language.txt | 0 indra/newview/Info-SecondLife.plist | 0 indra/newview/Info-SecondLifeVorbis.plist | 0 indra/newview/Japanese.lproj/language.txt | 0 indra/newview/Korean.lproj/language.txt | 0 indra/newview/SecondLife.nib/classes.nib | 0 indra/newview/SecondLife.nib/info.nib | 0 indra/newview/SecondLife.nib/objects.xib | 0 indra/newview/VertexCache.h | 0 indra/newview/ViewerInstall.cmake | 0 indra/newview/VorbisFramework.h | 0 indra/newview/app_settings/CA.pem | 0 indra/newview/app_settings/anim.ini | 0 indra/newview/app_settings/autoreplace.xml | 0 indra/newview/app_settings/cmd_line.xml | 0 indra/newview/app_settings/commands.xml | 0 indra/newview/app_settings/foldertypes.xml | 0 indra/newview/app_settings/grass.xml | 0 indra/newview/app_settings/high_graphics.xml | 0 indra/newview/app_settings/ignorable_dialogs.xml | 0 indra/newview/app_settings/keys.xml | 0 indra/newview/app_settings/keywords.ini | 0 indra/newview/app_settings/lindenlab.pem | 0 indra/newview/app_settings/llsd.xsd | 0 indra/newview/app_settings/logcontrol.xml | 0 indra/newview/app_settings/low_graphics.xml | 0 indra/newview/app_settings/mid_graphics.xml | 0 indra/newview/app_settings/settings.xml | 0 indra/newview/app_settings/settings_crash_behavior.xml | 0 indra/newview/app_settings/settings_files.xml | 0 indra/newview/app_settings/settings_minimal.xml | 0 indra/newview/app_settings/settings_per_account.xml | 0 .../newview/app_settings/shaders/class1/avatar/avatarF.glsl | 0 .../app_settings/shaders/class1/avatar/avatarSkinV.glsl | 0 .../newview/app_settings/shaders/class1/avatar/avatarV.glsl | 0 .../app_settings/shaders/class1/avatar/eyeballF.glsl | 0 .../app_settings/shaders/class1/avatar/eyeballV.glsl | 0 .../app_settings/shaders/class1/avatar/objectSkinV.glsl | 0 .../app_settings/shaders/class1/avatar/pickAvatarF.glsl | 0 .../app_settings/shaders/class1/avatar/pickAvatarV.glsl | 0 .../app_settings/shaders/class1/deferred/alphaF.glsl | 0 .../shaders/class1/deferred/alphaNonIndexedF.glsl | 0 .../shaders/class1/deferred/alphaNonIndexedNoColorF.glsl | 0 .../app_settings/shaders/class1/deferred/alphaSkinnedV.glsl | 0 .../app_settings/shaders/class1/deferred/alphaV.glsl | 0 .../shaders/class1/deferred/attachmentShadowF.glsl | 0 .../shaders/class1/deferred/attachmentShadowV.glsl | 0 .../shaders/class1/deferred/avatarAlphaNoColorV.glsl | 0 .../app_settings/shaders/class1/deferred/avatarAlphaV.glsl | 0 .../app_settings/shaders/class1/deferred/avatarEyesV.glsl | 0 .../app_settings/shaders/class1/deferred/avatarF.glsl | 0 .../app_settings/shaders/class1/deferred/avatarShadowF.glsl | 0 .../app_settings/shaders/class1/deferred/avatarShadowV.glsl | 0 .../app_settings/shaders/class1/deferred/avatarV.glsl | 0 .../app_settings/shaders/class1/deferred/blurLightF.glsl | 0 .../app_settings/shaders/class1/deferred/blurLightV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/bumpF.glsl | 0 .../app_settings/shaders/class1/deferred/bumpSkinnedV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/bumpV.glsl | 0 .../app_settings/shaders/class1/deferred/cloudsF.glsl | 0 .../app_settings/shaders/class1/deferred/cloudsV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/cofF.glsl | 0 .../shaders/class1/deferred/diffuseAlphaMaskF.glsl | 0 .../shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl | 0 .../shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl | 0 .../app_settings/shaders/class1/deferred/diffuseF.glsl | 0 .../shaders/class1/deferred/diffuseIndexedF.glsl | 0 .../shaders/class1/deferred/diffuseNoColorV.glsl | 0 .../shaders/class1/deferred/diffuseSkinnedV.glsl | 0 .../app_settings/shaders/class1/deferred/diffuseV.glsl | 0 .../app_settings/shaders/class1/deferred/dofCombineF.glsl | 0 .../app_settings/shaders/class1/deferred/emissiveF.glsl | 0 .../app_settings/shaders/class1/deferred/emissiveV.glsl | 0 .../app_settings/shaders/class1/deferred/fullbrightF.glsl | 0 .../app_settings/shaders/class1/deferred/fullbrightV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/fxaaF.glsl | 0 indra/newview/app_settings/shaders/class1/deferred/giF.glsl | 0 .../app_settings/shaders/class1/deferred/impostorF.glsl | 0 .../app_settings/shaders/class1/deferred/impostorV.glsl | 0 .../app_settings/shaders/class1/deferred/luminanceF.glsl | 0 .../app_settings/shaders/class1/deferred/luminanceV.glsl | 0 .../shaders/class1/deferred/multiPointLightF.glsl | 0 .../shaders/class1/deferred/multiPointLightV.glsl | 0 .../shaders/class1/deferred/multiSpotLightF.glsl | 0 .../app_settings/shaders/class1/deferred/normgenF.glsl | 0 .../app_settings/shaders/class1/deferred/normgenV.glsl | 0 .../app_settings/shaders/class1/deferred/pointLightF.glsl | 0 .../app_settings/shaders/class1/deferred/pointLightV.glsl | 0 .../app_settings/shaders/class1/deferred/postDeferredF.glsl | 0 .../shaders/class1/deferred/postDeferredNoDoFF.glsl | 0 .../shaders/class1/deferred/postDeferredNoTCV.glsl | 0 .../app_settings/shaders/class1/deferred/postDeferredV.glsl | 0 .../app_settings/shaders/class1/deferred/postgiF.glsl | 0 .../shaders/class1/deferred/shadowAlphaMaskF.glsl | 0 .../shaders/class1/deferred/shadowAlphaMaskV.glsl | 0 .../app_settings/shaders/class1/deferred/shadowCubeV.glsl | 0 .../app_settings/shaders/class1/deferred/shadowF.glsl | 0 .../app_settings/shaders/class1/deferred/shadowV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/skyF.glsl | 0 .../newview/app_settings/shaders/class1/deferred/skyV.glsl | 0 .../app_settings/shaders/class1/deferred/softenLightF.glsl | 0 .../app_settings/shaders/class1/deferred/softenLightV.glsl | 0 .../app_settings/shaders/class1/deferred/spotLightF.glsl | 0 .../app_settings/shaders/class1/deferred/starsF.glsl | 0 .../app_settings/shaders/class1/deferred/starsV.glsl | 0 .../app_settings/shaders/class1/deferred/sunLightF.glsl | 0 .../shaders/class1/deferred/sunLightNoFragCoordV.glsl | 0 .../app_settings/shaders/class1/deferred/sunLightSSAOF.glsl | 0 .../app_settings/shaders/class1/deferred/sunLightV.glsl | 0 .../app_settings/shaders/class1/deferred/terrainF.glsl | 0 .../app_settings/shaders/class1/deferred/terrainV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/treeF.glsl | 0 .../app_settings/shaders/class1/deferred/treeShadowF.glsl | 0 .../app_settings/shaders/class1/deferred/treeShadowV.glsl | 0 .../newview/app_settings/shaders/class1/deferred/treeV.glsl | 0 .../app_settings/shaders/class1/deferred/waterF.glsl | 0 .../app_settings/shaders/class1/deferred/waterV.glsl | 0 .../app_settings/shaders/class1/effects/glowExtractF.glsl | 0 .../app_settings/shaders/class1/effects/glowExtractV.glsl | 0 .../newview/app_settings/shaders/class1/effects/glowF.glsl | 0 .../newview/app_settings/shaders/class1/effects/glowV.glsl | 0 .../app_settings/shaders/class1/environment/terrainF.glsl | 0 .../app_settings/shaders/class1/environment/terrainV.glsl | 0 .../shaders/class1/environment/terrainWaterF.glsl | 0 .../shaders/class1/environment/underWaterF.glsl | 0 .../app_settings/shaders/class1/environment/waterF.glsl | 0 .../app_settings/shaders/class1/environment/waterFogF.glsl | 0 .../app_settings/shaders/class1/environment/waterV.glsl | 0 .../app_settings/shaders/class1/interface/alphamaskF.glsl | 0 .../app_settings/shaders/class1/interface/alphamaskV.glsl | 0 .../app_settings/shaders/class1/interface/clipF.glsl | 0 .../app_settings/shaders/class1/interface/clipV.glsl | 0 .../app_settings/shaders/class1/interface/customalphaF.glsl | 0 .../app_settings/shaders/class1/interface/customalphaV.glsl | 0 .../app_settings/shaders/class1/interface/debugF.glsl | 0 .../app_settings/shaders/class1/interface/debugV.glsl | 0 .../app_settings/shaders/class1/interface/glowcombineF.glsl | 0 .../shaders/class1/interface/glowcombineFXAAF.glsl | 0 .../shaders/class1/interface/glowcombineFXAAV.glsl | 0 .../app_settings/shaders/class1/interface/glowcombineV.glsl | 0 .../app_settings/shaders/class1/interface/highlightF.glsl | 0 .../app_settings/shaders/class1/interface/highlightV.glsl | 0 .../shaders/class1/interface/occlusionCubeV.glsl | 0 .../app_settings/shaders/class1/interface/occlusionF.glsl | 0 .../app_settings/shaders/class1/interface/occlusionV.glsl | 0 .../shaders/class1/interface/onetexturenocolorF.glsl | 0 .../shaders/class1/interface/onetexturenocolorV.glsl | 0 .../app_settings/shaders/class1/interface/pathfindingF.glsl | 0 .../shaders/class1/interface/pathfindingNoNormalV.glsl | 0 .../app_settings/shaders/class1/interface/pathfindingV.glsl | 0 .../app_settings/shaders/class1/interface/solidcolorF.glsl | 0 .../app_settings/shaders/class1/interface/solidcolorV.glsl | 0 .../shaders/class1/interface/splattexturerectF.glsl | 0 .../shaders/class1/interface/splattexturerectV.glsl | 0 .../shaders/class1/interface/twotextureaddF.glsl | 0 .../shaders/class1/interface/twotextureaddV.glsl | 0 .../newview/app_settings/shaders/class1/interface/uiF.glsl | 0 .../newview/app_settings/shaders/class1/interface/uiV.glsl | 0 .../shaders/class1/lighting/lightAlphaMaskF.glsl | 0 .../shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl | 0 .../app_settings/shaders/class1/lighting/lightF.glsl | 0 .../shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl | 0 .../shaders/class1/lighting/lightFullbrightF.glsl | 0 .../lighting/lightFullbrightNonIndexedAlphaMaskF.glsl | 0 .../shaders/class1/lighting/lightFullbrightNonIndexedF.glsl | 0 .../shaders/class1/lighting/lightFullbrightShinyF.glsl | 0 .../class1/lighting/lightFullbrightShinyNonIndexedF.glsl | 0 .../shaders/class1/lighting/lightFullbrightShinyWaterF.glsl | 0 .../lighting/lightFullbrightShinyWaterNonIndexedF.glsl | 0 .../class1/lighting/lightFullbrightWaterAlphaMaskF.glsl | 0 .../shaders/class1/lighting/lightFullbrightWaterF.glsl | 0 .../lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl | 0 .../class1/lighting/lightFullbrightWaterNonIndexedF.glsl | 0 .../shaders/class1/lighting/lightFuncSpecularV.glsl | 0 .../app_settings/shaders/class1/lighting/lightFuncV.glsl | 0 .../shaders/class1/lighting/lightNonIndexedF.glsl | 0 .../app_settings/shaders/class1/lighting/lightShinyF.glsl | 0 .../shaders/class1/lighting/lightShinyNonIndexedF.glsl | 0 .../shaders/class1/lighting/lightShinyWaterF.glsl | 0 .../shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl | 0 .../shaders/class1/lighting/lightSpecularV.glsl | 0 .../app_settings/shaders/class1/lighting/lightV.glsl | 0 .../shaders/class1/lighting/lightWaterAlphaMaskF.glsl | 0 .../class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl | 0 .../app_settings/shaders/class1/lighting/lightWaterF.glsl | 0 .../shaders/class1/lighting/lightWaterNonIndexedF.glsl | 0 .../shaders/class1/lighting/sumLightsSpecularV.glsl | 0 .../app_settings/shaders/class1/lighting/sumLightsV.glsl | 0 .../newview/app_settings/shaders/class1/objects/bumpF.glsl | 0 .../newview/app_settings/shaders/class1/objects/bumpV.glsl | 0 .../shaders/class1/objects/emissiveSkinnedV.glsl | 0 .../app_settings/shaders/class1/objects/emissiveV.glsl | 0 .../app_settings/shaders/class1/objects/fullbrightF.glsl | 0 .../shaders/class1/objects/fullbrightNoColorV.glsl | 0 .../shaders/class1/objects/fullbrightShinyF.glsl | 0 .../shaders/class1/objects/fullbrightShinySkinnedV.glsl | 0 .../shaders/class1/objects/fullbrightShinyV.glsl | 0 .../shaders/class1/objects/fullbrightShinyWaterF.glsl | 0 .../shaders/class1/objects/fullbrightSkinnedV.glsl | 0 .../app_settings/shaders/class1/objects/fullbrightV.glsl | 0 .../shaders/class1/objects/fullbrightWaterF.glsl | 0 .../app_settings/shaders/class1/objects/impostorF.glsl | 0 .../app_settings/shaders/class1/objects/impostorV.glsl | 0 .../shaders/class1/objects/indexedTextureF.glsl | 0 .../shaders/class1/objects/indexedTextureV.glsl | 0 .../shaders/class1/objects/nonindexedTextureV.glsl | 0 .../app_settings/shaders/class1/objects/previewF.glsl | 0 .../app_settings/shaders/class1/objects/previewV.glsl | 0 .../newview/app_settings/shaders/class1/objects/shinyF.glsl | 0 .../shaders/class1/objects/shinySimpleSkinnedV.glsl | 0 .../newview/app_settings/shaders/class1/objects/shinyV.glsl | 0 .../app_settings/shaders/class1/objects/shinyWaterF.glsl | 0 .../app_settings/shaders/class1/objects/simpleF.glsl | 0 .../app_settings/shaders/class1/objects/simpleNoColorV.glsl | 0 .../shaders/class1/objects/simpleNonIndexedV.glsl | 0 .../app_settings/shaders/class1/objects/simpleSkinnedV.glsl | 0 .../app_settings/shaders/class1/objects/simpleTexGenV.glsl | 0 .../app_settings/shaders/class1/objects/simpleV.glsl | 0 .../app_settings/shaders/class1/objects/simpleWaterF.glsl | 0 .../newview/app_settings/shaders/class1/objects/treeV.glsl | 0 .../app_settings/shaders/class1/transform/binormalV.glsl | 0 .../app_settings/shaders/class1/transform/colorV.glsl | 0 .../app_settings/shaders/class1/transform/normalV.glsl | 0 .../app_settings/shaders/class1/transform/positionV.glsl | 0 .../app_settings/shaders/class1/transform/texcoordV.glsl | 0 .../shaders/class1/windlight/atmosphericsF.glsl | 0 .../shaders/class1/windlight/atmosphericsHelpersV.glsl | 0 .../shaders/class1/windlight/atmosphericsV.glsl | 0 .../shaders/class1/windlight/atmosphericsVarsF.glsl | 0 .../shaders/class1/windlight/atmosphericsVarsV.glsl | 0 .../shaders/class1/windlight/atmosphericsVarsWaterF.glsl | 0 .../shaders/class1/windlight/atmosphericsVarsWaterV.glsl | 0 .../app_settings/shaders/class1/windlight/gammaF.glsl | 0 .../app_settings/shaders/class1/windlight/transportF.glsl | 0 .../app_settings/shaders/class2/avatar/eyeballV.glsl | 0 .../app_settings/shaders/class2/deferred/alphaF.glsl | 0 .../shaders/class2/deferred/alphaNonIndexedF.glsl | 0 .../shaders/class2/deferred/alphaNonIndexedNoColorF.glsl | 0 .../app_settings/shaders/class2/deferred/alphaSkinnedV.glsl | 0 .../app_settings/shaders/class2/deferred/alphaV.glsl | 0 .../app_settings/shaders/class2/deferred/avatarAlphaV.glsl | 0 .../shaders/class2/deferred/multiSpotLightF.glsl | 0 .../app_settings/shaders/class2/deferred/softenLightF.glsl | 0 .../app_settings/shaders/class2/deferred/softenLightV.glsl | 0 .../app_settings/shaders/class2/deferred/spotLightF.glsl | 0 .../app_settings/shaders/class2/deferred/sunLightF.glsl | 0 .../app_settings/shaders/class2/deferred/sunLightSSAOF.glsl | 0 .../app_settings/shaders/class2/deferred/sunLightV.glsl | 0 .../shaders/class2/lighting/sumLightsSpecularV.glsl | 0 .../app_settings/shaders/class2/lighting/sumLightsV.glsl | 0 .../shaders/class2/windlight/atmosphericsF.glsl | 0 .../shaders/class2/windlight/atmosphericsHelpersV.glsl | 0 .../shaders/class2/windlight/atmosphericsV.glsl | 0 .../shaders/class2/windlight/atmosphericsVarsF.glsl | 0 .../shaders/class2/windlight/atmosphericsVarsV.glsl | 0 .../shaders/class2/windlight/atmosphericsVarsWaterF.glsl | 0 .../shaders/class2/windlight/atmosphericsVarsWaterV.glsl | 0 .../app_settings/shaders/class2/windlight/cloudsF.glsl | 0 .../app_settings/shaders/class2/windlight/cloudsV.glsl | 0 .../app_settings/shaders/class2/windlight/gammaF.glsl | 0 .../newview/app_settings/shaders/class2/windlight/skyF.glsl | 0 .../newview/app_settings/shaders/class2/windlight/skyV.glsl | 0 .../app_settings/shaders/class2/windlight/transportF.glsl | 0 .../newview/app_settings/shaders/class3/avatar/avatarV.glsl | 0 .../shaders/class3/lighting/sumLightsSpecularV.glsl | 0 .../app_settings/shaders/class3/lighting/sumLightsV.glsl | 0 indra/newview/app_settings/shaders/shader_hierarchy.txt | 0 indra/newview/app_settings/static_data.db2 | Bin indra/newview/app_settings/static_index.db2 | Bin indra/newview/app_settings/std_bump.ini | 0 indra/newview/app_settings/toolbars.xml | 0 indra/newview/app_settings/trees.xml | 0 indra/newview/app_settings/ultra_graphics.xml | 0 indra/newview/app_settings/viewerart.xml | 0 indra/newview/app_settings/windlight/clouds2.tga | Bin .../newview/app_settings/windlight/days/Colder%20Tones.xml | 0 indra/newview/app_settings/windlight/days/Default.xml | 0 .../app_settings/windlight/days/Dynamic%20Richness.xml | 0 .../app_settings/windlight/days/Pirate%27s%20Dream.xml | 0 .../app_settings/windlight/days/Psycho%20Strobe%21.xml | 0 indra/newview/app_settings/windlight/days/Tropicalia.xml | 0 indra/newview/app_settings/windlight/days/Weird-O.xml | 0 indra/newview/app_settings/windlight/postprocesseffects.xml | 0 indra/newview/app_settings/windlight/skies/A%2D12AM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D12PM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D3AM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D3PM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D6AM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D6PM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D9AM.xml | 0 indra/newview/app_settings/windlight/skies/A%2D9PM.xml | 0 indra/newview/app_settings/windlight/skies/Barcelona.xml | 0 indra/newview/app_settings/windlight/skies/Blizzard.xml | 0 .../newview/app_settings/windlight/skies/Blue%20Midday.xml | 0 .../app_settings/windlight/skies/Coastal%20Afternoon.xml | 0 .../app_settings/windlight/skies/Coastal%20Sunset.xml | 0 indra/newview/app_settings/windlight/skies/Default.xml | 0 .../app_settings/windlight/skies/Desert%20Sunset.xml | 0 indra/newview/app_settings/windlight/skies/Fine%20Day.xml | 0 .../app_settings/windlight/skies/Fluffy%20Big%20Clouds.xml | 0 indra/newview/app_settings/windlight/skies/Foggy.xml | 0 .../app_settings/windlight/skies/Funky%20Funky%20Funky.xml | 0 .../newview/app_settings/windlight/skies/Funky%20Funky.xml | 0 indra/newview/app_settings/windlight/skies/Gelatto.xml | 0 indra/newview/app_settings/windlight/skies/Ghost.xml | 0 .../app_settings/windlight/skies/Incongruent%20Truths.xml | 0 indra/newview/app_settings/windlight/skies/Midday%201.xml | 0 indra/newview/app_settings/windlight/skies/Midday%202.xml | 0 indra/newview/app_settings/windlight/skies/Midday%203.xml | 0 indra/newview/app_settings/windlight/skies/Midday%204.xml | 0 indra/newview/app_settings/windlight/skies/Midday.xml | 0 indra/newview/app_settings/windlight/skies/Midnight.xml | 0 indra/newview/app_settings/windlight/skies/Night.xml | 0 indra/newview/app_settings/windlight/skies/Pirate.xml | 0 indra/newview/app_settings/windlight/skies/Purple.xml | 0 .../app_settings/windlight/skies/Sailor%27s%20Delight.xml | 0 .../app_settings/windlight/skies/Sheer%20Surreality.xml | 0 indra/newview/app_settings/windlight/skies/Sunrise.xml | 0 indra/newview/app_settings/windlight/skies/Sunset.xml | 0 indra/newview/app_settings/windlight/water/Default.xml | 0 indra/newview/app_settings/windlight/water/Glassy.xml | 0 indra/newview/app_settings/windlight/water/Murky.xml | 0 indra/newview/app_settings/windlight/water/Pond.xml | 0 .../newview/app_settings/windlight/water/SNAKE%21%21%21.xml | 0 .../app_settings/windlight/water/Second%20Plague.xml | 0 indra/newview/app_settings/windlight/water/Valdez.xml | 0 indra/newview/build_win32_appConfig.py | 0 indra/newview/character/attentions.xml | 0 indra/newview/character/attentionsN.xml | 0 indra/newview/character/avatar_eye.llm | Bin indra/newview/character/avatar_eye_1.llm | Bin indra/newview/character/avatar_eyelashes.llm | Bin indra/newview/character/avatar_hair.llm | Bin indra/newview/character/avatar_hair_1.llm | Bin indra/newview/character/avatar_hair_2.llm | Bin indra/newview/character/avatar_hair_3.llm | Bin indra/newview/character/avatar_hair_4.llm | Bin indra/newview/character/avatar_hair_5.llm | Bin indra/newview/character/avatar_head.llm | Bin indra/newview/character/avatar_head_1.llm | Bin indra/newview/character/avatar_head_2.llm | Bin indra/newview/character/avatar_head_3.llm | Bin indra/newview/character/avatar_head_4.llm | Bin indra/newview/character/avatar_lad.xml | 0 indra/newview/character/avatar_lower_body.llm | Bin indra/newview/character/avatar_lower_body_1.llm | Bin indra/newview/character/avatar_lower_body_2.llm | Bin indra/newview/character/avatar_lower_body_3.llm | Bin indra/newview/character/avatar_lower_body_4.llm | Bin indra/newview/character/avatar_skeleton.xml | 0 indra/newview/character/avatar_skirt.llm | Bin indra/newview/character/avatar_skirt_1.llm | Bin indra/newview/character/avatar_skirt_2.llm | Bin indra/newview/character/avatar_skirt_3.llm | Bin indra/newview/character/avatar_skirt_4.llm | Bin indra/newview/character/avatar_upper_body.llm | Bin indra/newview/character/avatar_upper_body_1.llm | Bin indra/newview/character/avatar_upper_body_2.llm | Bin indra/newview/character/avatar_upper_body_3.llm | Bin indra/newview/character/avatar_upper_body_4.llm | Bin indra/newview/character/blush_alpha.tga | Bin indra/newview/character/body_skingrain.tga | Bin indra/newview/character/bodyfreckles_alpha.tga | Bin indra/newview/character/bump_face_wrinkles.tga | Bin indra/newview/character/bump_head_base.tga | Bin indra/newview/character/bump_lowerbody_base.tga | Bin indra/newview/character/bump_pants_wrinkles.tga | Bin indra/newview/character/bump_shirt_wrinkles.tga | Bin indra/newview/character/bump_upperbody_base.tga | Bin indra/newview/character/checkerboard.tga | Bin indra/newview/character/eyebrows_alpha.tga | Bin indra/newview/character/eyeliner_alpha.tga | Bin indra/newview/character/eyeshadow_inner_alpha.tga | Bin indra/newview/character/eyeshadow_outer_alpha.tga | Bin indra/newview/character/eyewhite.tga | Bin indra/newview/character/facehair_chincurtains_alpha.tga | Bin indra/newview/character/facehair_moustache_alpha.tga | Bin indra/newview/character/facehair_sideburns_alpha.tga | Bin indra/newview/character/facehair_soulpatch_alpha.tga | Bin indra/newview/character/freckles_alpha.tga | Bin indra/newview/character/genepool.xml | 0 indra/newview/character/glove_length_alpha.tga | Bin indra/newview/character/gloves_fingers_alpha.tga | Bin indra/newview/character/head_alpha.tga | Bin indra/newview/character/head_color.tga | Bin indra/newview/character/head_hair.tga | Bin indra/newview/character/head_highlights_alpha.tga | Bin indra/newview/character/head_shading_alpha.tga | Bin indra/newview/character/head_skingrain.tga | Bin indra/newview/character/jacket_length_lower_alpha.tga | Bin indra/newview/character/jacket_length_upper_alpha.tga | Bin indra/newview/character/jacket_open_lower_alpha.tga | Bin indra/newview/character/jacket_open_upper_alpha.tga | Bin indra/newview/character/lipgloss_alpha.tga | Bin indra/newview/character/lips_mask.tga | Bin indra/newview/character/lipstick_alpha.tga | Bin indra/newview/character/lowerbody_color.tga | Bin indra/newview/character/lowerbody_highlights_alpha.tga | Bin indra/newview/character/lowerbody_shading_alpha.tga | Bin indra/newview/character/nailpolish_alpha.tga | Bin indra/newview/character/pants_length_alpha.tga | Bin indra/newview/character/pants_waist_alpha.tga | Bin indra/newview/character/rosyface_alpha.tga | Bin indra/newview/character/rouge_alpha.tga | Bin indra/newview/character/shirt_bottom_alpha.tga | Bin indra/newview/character/shirt_collar_alpha.tga | Bin indra/newview/character/shirt_collar_back_alpha.tga | Bin indra/newview/character/shirt_sleeve_alpha.tga | Bin indra/newview/character/shoe_height_alpha.tga | Bin indra/newview/character/skirt_length_alpha.tga | Bin indra/newview/character/skirt_slit_back_alpha.tga | Bin indra/newview/character/skirt_slit_front_alpha.tga | Bin indra/newview/character/skirt_slit_left_alpha.tga | Bin indra/newview/character/skirt_slit_right_alpha.tga | Bin indra/newview/character/underpants_trial_female.tga | Bin indra/newview/character/underpants_trial_male.tga | Bin indra/newview/character/undershirt_trial_female.tga | Bin indra/newview/character/upperbody_color.tga | Bin indra/newview/character/upperbody_highlights_alpha.tga | Bin indra/newview/character/upperbody_shading_alpha.tga | Bin indra/newview/character/upperbodyfreckles_alpha.tga | Bin indra/newview/cursors_mac/UI_CURSOR_ARROW.tif | Bin indra/newview/cursors_mac/UI_CURSOR_ARROWDRAG.tif | Bin indra/newview/cursors_mac/UI_CURSOR_ARROWLOCKED.tif | Bin indra/newview/cursors_mac/UI_CURSOR_GRABLOCKED.tif | Bin indra/newview/cursors_mac/UI_CURSOR_NO.tif | Bin indra/newview/cursors_mac/UI_CURSOR_NOLOCKED.tif | Bin indra/newview/cursors_mac/UI_CURSOR_PATHFINDING.tif | Bin indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END.tif | Bin indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END_ADD.tif | Bin indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START.tif | Bin .../newview/cursors_mac/UI_CURSOR_PATHFINDING_START_ADD.tif | Bin indra/newview/cursors_mac/UI_CURSOR_SIZENESW.tif | Bin indra/newview/cursors_mac/UI_CURSOR_SIZENS.tif | Bin indra/newview/cursors_mac/UI_CURSOR_SIZENWSE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_SIZEWE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLBUY.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLCAMERA.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLCREATE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLFOCUS.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLGRAB.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLLAND.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLMEDIAOPEN.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLOPEN.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLPAN.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLPAUSE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLPICKOBJECT3.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLPLAY.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLROTATE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLSCALE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLSIT.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLTRANSLATE.tif | Bin indra/newview/cursors_mac/UI_CURSOR_TOOLZOOMIN.tif | Bin indra/newview/cursors_mac/UI_CURSOR_WORKING.tif | Bin indra/newview/da.lproj/language.txt | 0 indra/newview/es.lproj/language.txt | 0 indra/newview/featuretable.txt | 0 indra/newview/featuretable_linux.txt | 0 indra/newview/featuretable_mac.txt | 0 indra/newview/featuretable_solaris.txt | 0 indra/newview/featuretable_xp.txt | 0 indra/newview/fmod_hidden_symbols.exp | 0 indra/newview/fmodwrapper.cpp | 0 indra/newview/fonts/DejaVu-license.txt | 0 indra/newview/fonts/DejaVuSans-Bold.ttf | Bin indra/newview/fonts/DejaVuSans-BoldOblique.ttf | Bin indra/newview/fonts/DejaVuSans-Oblique.ttf | Bin indra/newview/fonts/DejaVuSans.ttf | Bin indra/newview/fonts/DejaVuSansMono.ttf | Bin indra/newview/fr.lproj/language.txt | 0 indra/newview/generate_breakpad_symbols.py | 0 indra/newview/gpu_table.txt | 0 indra/newview/groupchatlistener.cpp | 0 indra/newview/groupchatlistener.h | 0 indra/newview/hu.lproj/language.txt | 0 indra/newview/icons/beta/secondlife.icns | Bin indra/newview/icons/beta/secondlife.ico | Bin indra/newview/icons/beta/secondlife_128.png | Bin indra/newview/icons/beta/secondlife_16.png | Bin indra/newview/icons/beta/secondlife_256.BMP | Bin indra/newview/icons/beta/secondlife_256.png | Bin indra/newview/icons/beta/secondlife_32.png | Bin indra/newview/icons/beta/secondlife_48.png | Bin indra/newview/icons/beta/secondlife_512.png | Bin indra/newview/icons/development/secondlife.icns | Bin indra/newview/icons/development/secondlife.ico | Bin indra/newview/icons/development/secondlife_128.png | Bin indra/newview/icons/development/secondlife_16.png | Bin indra/newview/icons/development/secondlife_256.BMP | Bin indra/newview/icons/development/secondlife_256.png | Bin indra/newview/icons/development/secondlife_32.png | Bin indra/newview/icons/development/secondlife_48.png | Bin indra/newview/icons/development/secondlife_512.png | Bin indra/newview/icons/project/secondlife.icns | Bin indra/newview/icons/project/secondlife.ico | Bin indra/newview/icons/project/secondlife_128.png | Bin indra/newview/icons/project/secondlife_16.png | Bin indra/newview/icons/project/secondlife_256.BMP | Bin indra/newview/icons/project/secondlife_256.png | Bin indra/newview/icons/project/secondlife_32.png | Bin indra/newview/icons/project/secondlife_48.png | Bin indra/newview/icons/project/secondlife_512.png | Bin indra/newview/icons/release/secondlife.icns | Bin indra/newview/icons/release/secondlife.ico | Bin indra/newview/icons/release/secondlife_128.png | Bin indra/newview/icons/release/secondlife_16.png | Bin indra/newview/icons/release/secondlife_256.BMP | Bin indra/newview/icons/release/secondlife_256.png | Bin indra/newview/icons/release/secondlife_32.png | Bin indra/newview/icons/release/secondlife_48.png | Bin indra/newview/icons/release/secondlife_512.png | Bin indra/newview/icons/test/secondlife.icns | Bin indra/newview/icons/test/secondlife.ico | Bin indra/newview/icons/test/secondlife_128.png | Bin indra/newview/icons/test/secondlife_16.png | Bin indra/newview/icons/test/secondlife_256.BMP | Bin indra/newview/icons/test/secondlife_256.png | Bin indra/newview/icons/test/secondlife_32.png | Bin indra/newview/icons/test/secondlife_48.png | Bin indra/newview/icons/test/secondlife_512.png | Bin indra/newview/installers/darwin/dmg-cleanup.applescript | 0 .../installers/darwin/fix_application_icon_position.sh | 0 .../installers/darwin/release-dmg/Applications-alias.r | 0 indra/newview/installers/darwin/release-dmg/_DS_Store | Bin .../newview/installers/darwin/release-dmg/_VolumeIcon.icns | Bin indra/newview/installers/darwin/release-dmg/background.jpg | Bin .../installers/windows/FILES_ARE_UNICODE_UTF-16LE.txt | 0 indra/newview/installers/windows/install_icon.BMP | Bin indra/newview/installers/windows/install_icon.ico | Bin indra/newview/installers/windows/installer_template.nsi | 0 indra/newview/installers/windows/lang_da.nsi | Bin indra/newview/installers/windows/lang_de.nsi | Bin indra/newview/installers/windows/lang_en-us.nsi | Bin indra/newview/installers/windows/lang_es.nsi | Bin indra/newview/installers/windows/lang_fr.nsi | Bin indra/newview/installers/windows/lang_it.nsi | Bin indra/newview/installers/windows/lang_ja.nsi | Bin indra/newview/installers/windows/lang_pl.nsi | Bin indra/newview/installers/windows/lang_pt-br.nsi | Bin indra/newview/installers/windows/lang_ru.nsi | Bin indra/newview/installers/windows/lang_tr.nsi | Bin indra/newview/installers/windows/lang_zh.nsi | Bin indra/newview/installers/windows/language_menu.nsi | Bin indra/newview/installers/windows/uninstall_icon.BMP | Bin indra/newview/installers/windows/uninstall_icon.ico | Bin indra/newview/it.lproj/language.txt | 0 indra/newview/licenses-linux.txt | 0 indra/newview/licenses-mac.txt | 0 indra/newview/licenses-solaris.txt | 0 indra/newview/licenses-win32.txt | 0 indra/newview/linux_tools/client-readme-joystick.txt | 0 indra/newview/linux_tools/client-readme-voice.txt | 0 indra/newview/linux_tools/client-readme.txt | 0 indra/newview/llaccountingcostmanager.cpp | 0 indra/newview/llaccountingcostmanager.h | 0 indra/newview/llagent.h | 0 indra/newview/llagentaccess.cpp | 0 indra/newview/llagentaccess.h | 0 indra/newview/llagentcamera.cpp | 0 indra/newview/llagentcamera.h | 0 indra/newview/llagentdata.cpp | 0 indra/newview/llagentdata.h | 0 indra/newview/llagentlanguage.cpp | 0 indra/newview/llagentlanguage.h | 0 indra/newview/llagentlistener.cpp | 0 indra/newview/llagentlistener.h | 0 indra/newview/llagentpicksinfo.cpp | 0 indra/newview/llagentpicksinfo.h | 0 indra/newview/llagentpilot.cpp | 0 indra/newview/llagentpilot.h | 0 indra/newview/llagentui.cpp | 0 indra/newview/llagentui.h | 0 indra/newview/llagentwearables.cpp | 0 indra/newview/llagentwearables.h | 0 indra/newview/llagentwearablesfetch.cpp | 0 indra/newview/llagentwearablesfetch.h | 0 indra/newview/llanimstatelabels.cpp | 0 indra/newview/llanimstatelabels.h | 0 indra/newview/llappcorehttp.cpp | 0 indra/newview/llappcorehttp.h | 0 indra/newview/llappearance.h | 0 indra/newview/llappearancemgr.cpp | 0 indra/newview/llappearancemgr.h | 0 indra/newview/llappviewer.cpp | 0 indra/newview/llappviewer.h | 0 indra/newview/llappviewerlinux.cpp | 0 indra/newview/llappviewerlinux.h | 0 indra/newview/llappviewerlinux_api.h | 0 indra/newview/llappviewerlinux_api.xml | 0 indra/newview/llappviewerlinux_api_dbus.cpp | 0 indra/newview/llappviewerlinux_api_dbus.h | 0 indra/newview/llappviewerlinux_api_dbus_syms_raw.inc | 0 indra/newview/llappviewerlistener.cpp | 0 indra/newview/llappviewerlistener.h | 0 indra/newview/llappviewermacosx.cpp | 0 indra/newview/llappviewermacosx.h | 0 indra/newview/llappviewerwin32.cpp | 0 indra/newview/llappviewerwin32.h | 0 indra/newview/llassetuploadqueue.cpp | 0 indra/newview/llassetuploadqueue.h | 0 indra/newview/llassetuploadresponders.cpp | 0 indra/newview/llassetuploadresponders.h | 0 indra/newview/llattachmentsmgr.cpp | 0 indra/newview/llattachmentsmgr.h | 0 indra/newview/llaudiosourcevo.cpp | 0 indra/newview/llaudiosourcevo.h | 0 indra/newview/llautoreplace.cpp | 0 indra/newview/llautoreplace.h | 0 indra/newview/llavataractions.h | 0 indra/newview/llavatariconctrl.h | 0 indra/newview/llavatarlist.cpp | 0 indra/newview/llavatarlist.h | 0 indra/newview/llavatarlistitem.cpp | 0 indra/newview/llavatarlistitem.h | 0 indra/newview/llavatarpropertiesprocessor.cpp | 0 indra/newview/llavatarpropertiesprocessor.h | 0 indra/newview/llblockedlistitem.cpp | 0 indra/newview/llblockedlistitem.h | 0 indra/newview/llblocklist.cpp | 0 indra/newview/llblocklist.h | 0 indra/newview/llbox.cpp | 0 indra/newview/llbox.h | 0 indra/newview/llbreadcrumbview.cpp | 0 indra/newview/llbreadcrumbview.h | 0 indra/newview/llbreastmotion.cpp | 0 indra/newview/llbreastmotion.h | 0 indra/newview/llbrowsernotification.cpp | 0 indra/newview/llbuycurrencyhtml.cpp | 0 indra/newview/llbuycurrencyhtml.h | 0 indra/newview/llcallbacklist.cpp | 0 indra/newview/llcallbacklist.h | 0 indra/newview/llcallingcard.cpp | 0 indra/newview/llcallingcard.h | 0 indra/newview/llcapabilitylistener.cpp | 0 indra/newview/llcapabilitylistener.h | 0 indra/newview/llcapabilityprovider.h | 0 indra/newview/llcaphttpsender.cpp | 0 indra/newview/llcaphttpsender.h | 0 indra/newview/llchannelmanager.cpp | 0 indra/newview/llchannelmanager.h | 0 indra/newview/llchatbar.cpp | 0 indra/newview/llchatbar.h | 0 indra/newview/llchathistory.cpp | 0 indra/newview/llchathistory.h | 0 indra/newview/llchatitemscontainerctrl.cpp | 0 indra/newview/llchatitemscontainerctrl.h | 0 indra/newview/llchatmsgbox.cpp | 0 indra/newview/llchatmsgbox.h | 0 indra/newview/llchiclet.cpp | 0 indra/newview/llchiclet.h | 0 indra/newview/llchicletbar.cpp | 0 indra/newview/llchicletbar.h | 0 indra/newview/llclassifiedinfo.cpp | 0 indra/newview/llclassifiedinfo.h | 0 indra/newview/llclassifiedstatsresponder.cpp | 0 indra/newview/llclassifiedstatsresponder.h | 0 indra/newview/llcofwearables.cpp | 0 indra/newview/llcofwearables.h | 0 indra/newview/llcolorswatch.cpp | 0 indra/newview/llcolorswatch.h | 0 indra/newview/llcommanddispatcherlistener.cpp | 0 indra/newview/llcommanddispatcherlistener.h | 0 indra/newview/llcommandhandler.h | 0 indra/newview/llcommandlineparser.cpp | 0 indra/newview/llcommandlineparser.h | 0 indra/newview/llcommunicationchannel.cpp | 0 indra/newview/llcommunicationchannel.h | 0 indra/newview/llcompilequeue.cpp | 0 indra/newview/llcompilequeue.h | 0 indra/newview/llconfirmationmanager.cpp | 0 indra/newview/llconfirmationmanager.h | 0 indra/newview/llconversationlog.cpp | 0 indra/newview/llconversationlog.h | 0 indra/newview/llconversationloglist.cpp | 0 indra/newview/llconversationloglist.h | 0 indra/newview/llconversationloglistitem.cpp | 0 indra/newview/llconversationloglistitem.h | 0 indra/newview/llconversationmodel.cpp | 0 indra/newview/llcurrencyuimanager.cpp | 0 indra/newview/llcurrencyuimanager.h | 0 indra/newview/llcylinder.cpp | 0 indra/newview/llcylinder.h | 0 indra/newview/lldateutil.cpp | 0 indra/newview/lldateutil.h | 0 indra/newview/lldaycyclemanager.cpp | 0 indra/newview/lldaycyclemanager.h | 0 indra/newview/lldebugmessagebox.cpp | 0 indra/newview/lldebugmessagebox.h | 0 indra/newview/lldebugview.cpp | 0 indra/newview/lldebugview.h | 0 indra/newview/lldeferredsounds.cpp | 0 indra/newview/lldeferredsounds.h | 0 indra/newview/lldelayedgestureerror.cpp | 0 indra/newview/lldelayedgestureerror.h | 0 indra/newview/lldirpicker.cpp | 0 indra/newview/lldirpicker.h | 0 indra/newview/lldndbutton.cpp | 0 indra/newview/lldndbutton.h | 0 indra/newview/lldonotdisturbnotificationstorage.cpp | 0 indra/newview/lldonotdisturbnotificationstorage.h | 0 indra/newview/lldrawable.cpp | 0 indra/newview/lldrawable.h | 0 indra/newview/lldrawpool.cpp | 0 indra/newview/lldrawpool.h | 0 indra/newview/lldrawpoolalpha.cpp | 0 indra/newview/lldrawpoolalpha.h | 0 indra/newview/lldrawpoolavatar.cpp | 0 indra/newview/lldrawpoolavatar.h | 0 indra/newview/lldrawpoolbump.cpp | 0 indra/newview/lldrawpoolbump.h | 0 indra/newview/lldrawpoolground.cpp | 0 indra/newview/lldrawpoolground.h | 0 indra/newview/lldrawpoolsimple.cpp | 0 indra/newview/lldrawpoolsimple.h | 0 indra/newview/lldrawpoolsky.cpp | 0 indra/newview/lldrawpoolsky.h | 0 indra/newview/lldrawpoolterrain.cpp | 0 indra/newview/lldrawpoolterrain.h | 0 indra/newview/lldrawpooltree.cpp | 0 indra/newview/lldrawpooltree.h | 0 indra/newview/lldrawpoolwater.cpp | 0 indra/newview/lldrawpoolwater.h | 0 indra/newview/lldrawpoolwlsky.cpp | 0 indra/newview/lldrawpoolwlsky.h | 0 indra/newview/lldriverparam.cpp | 0 indra/newview/lldriverparam.h | 0 indra/newview/lldynamictexture.cpp | 0 indra/newview/lldynamictexture.h | 0 indra/newview/llemote.cpp | 0 indra/newview/llemote.h | 0 indra/newview/llenvmanager.cpp | 0 indra/newview/llenvmanager.h | 0 indra/newview/llestateinfomodel.cpp | 0 indra/newview/llestateinfomodel.h | 0 indra/newview/lleventnotifier.cpp | 0 indra/newview/lleventnotifier.h | 0 indra/newview/lleventpoll.cpp | 0 indra/newview/lleventpoll.h | 0 indra/newview/llexpandabletextbox.cpp | 0 indra/newview/llexpandabletextbox.h | 0 indra/newview/llexternaleditor.cpp | 0 indra/newview/llexternaleditor.h | 0 indra/newview/llface.cpp | 0 indra/newview/llface.h | 0 indra/newview/llface.inl | 0 indra/newview/llfasttimerview.cpp | 0 indra/newview/llfasttimerview.h | 0 indra/newview/llfavoritesbar.cpp | 0 indra/newview/llfavoritesbar.h | 0 indra/newview/llfeaturemanager.cpp | 0 indra/newview/llfeaturemanager.h | 0 indra/newview/llfilepicker.cpp | 0 indra/newview/llfilepicker.h | 0 indra/newview/llfilteredwearablelist.cpp | 0 indra/newview/llfilteredwearablelist.h | 0 indra/newview/llfirstuse.cpp | 0 indra/newview/llfirstuse.h | 0 indra/newview/llflexibleobject.cpp | 0 indra/newview/llflexibleobject.h | 0 indra/newview/llfloaterabout.cpp | 0 indra/newview/llfloaterabout.h | 0 indra/newview/llfloaterauction.cpp | 0 indra/newview/llfloaterauction.h | 0 indra/newview/llfloaterautoreplacesettings.cpp | 0 indra/newview/llfloaterautoreplacesettings.h | 0 indra/newview/llfloateravatar.cpp | 0 indra/newview/llfloateravatar.h | 0 indra/newview/llfloateravatarpicker.cpp | 0 indra/newview/llfloateravatarpicker.h | 0 indra/newview/llfloateravatartextures.cpp | 0 indra/newview/llfloateravatartextures.h | 0 indra/newview/llfloaterbeacons.cpp | 0 indra/newview/llfloaterbeacons.h | 0 indra/newview/llfloaterbuildoptions.cpp | 0 indra/newview/llfloaterbuildoptions.h | 0 indra/newview/llfloaterbulkpermission.cpp | 0 indra/newview/llfloaterbulkpermission.h | 0 indra/newview/llfloaterbump.cpp | 0 indra/newview/llfloaterbump.h | 0 indra/newview/llfloaterbuy.cpp | 0 indra/newview/llfloaterbuy.h | 0 indra/newview/llfloaterbuycontents.cpp | 0 indra/newview/llfloaterbuycontents.h | 0 indra/newview/llfloaterbuycurrency.cpp | 0 indra/newview/llfloaterbuycurrency.h | 0 indra/newview/llfloaterbuycurrencyhtml.cpp | 0 indra/newview/llfloaterbuycurrencyhtml.h | 0 indra/newview/llfloaterbuyland.cpp | 0 indra/newview/llfloaterbuyland.h | 0 indra/newview/llfloaterbvhpreview.cpp | 0 indra/newview/llfloaterbvhpreview.h | 0 indra/newview/llfloatercamera.cpp | 0 indra/newview/llfloatercamera.h | 0 indra/newview/llfloaterchatvoicevolume.cpp | 0 indra/newview/llfloaterchatvoicevolume.h | 0 indra/newview/llfloatercolorpicker.cpp | 0 indra/newview/llfloatercolorpicker.h | 0 indra/newview/llfloaterconversationlog.cpp | 0 indra/newview/llfloaterconversationlog.h | 0 indra/newview/llfloaterconversationpreview.cpp | 0 indra/newview/llfloaterconversationpreview.h | 0 indra/newview/llfloaterdeleteenvpreset.cpp | 0 indra/newview/llfloaterdeleteenvpreset.h | 0 indra/newview/llfloaterdestinations.cpp | 0 indra/newview/llfloaterdestinations.h | 0 indra/newview/llfloaterdisplayname.cpp | 0 indra/newview/llfloaterdisplayname.h | 0 indra/newview/llfloatereditdaycycle.cpp | 0 indra/newview/llfloatereditdaycycle.h | 0 indra/newview/llfloatereditsky.cpp | 0 indra/newview/llfloatereditsky.h | 0 indra/newview/llfloatereditwater.cpp | 0 indra/newview/llfloatereditwater.h | 0 indra/newview/llfloaterenvironmentsettings.cpp | 0 indra/newview/llfloaterenvironmentsettings.h | 0 indra/newview/llfloaterevent.cpp | 0 indra/newview/llfloaterevent.h | 0 indra/newview/llfloaterfonttest.cpp | 0 indra/newview/llfloaterfonttest.h | 0 indra/newview/llfloatergesture.cpp | 0 indra/newview/llfloatergesture.h | 0 indra/newview/llfloatergodtools.cpp | 0 indra/newview/llfloatergodtools.h | 0 indra/newview/llfloatergroupinvite.cpp | 0 indra/newview/llfloatergroupinvite.h | 0 indra/newview/llfloatergroups.cpp | 0 indra/newview/llfloatergroups.h | 0 indra/newview/llfloaterhandler.cpp | 0 indra/newview/llfloaterhandler.h | 0 indra/newview/llfloaterhardwaresettings.cpp | 0 indra/newview/llfloaterhardwaresettings.h | 0 indra/newview/llfloaterhelpbrowser.cpp | 0 indra/newview/llfloaterhelpbrowser.h | 0 indra/newview/llfloaterhud.cpp | 0 indra/newview/llfloaterhud.h | 0 indra/newview/llfloaterimagepreview.cpp | 0 indra/newview/llfloaterimagepreview.h | 0 indra/newview/llfloaterimcontainer.cpp | 0 indra/newview/llfloaterimcontainer.h | 0 indra/newview/llfloaterimnearbychat.cpp | 0 indra/newview/llfloaterimnearbychat.h | 0 indra/newview/llfloaterimnearbychathandler.cpp | 0 indra/newview/llfloaterimnearbychathandler.h | 0 indra/newview/llfloaterimnearbychatlistener.cpp | 0 indra/newview/llfloaterimnearbychatlistener.h | 0 indra/newview/llfloaterimsession.cpp | 0 indra/newview/llfloaterimsession.h | 0 indra/newview/llfloaterimsessiontab.cpp | 0 indra/newview/llfloaterimsessiontab.h | 0 indra/newview/llfloaterinspect.cpp | 0 indra/newview/llfloaterinspect.h | 0 indra/newview/llfloaterinventory.cpp | 0 indra/newview/llfloaterinventory.h | 0 indra/newview/llfloaterjoystick.cpp | 0 indra/newview/llfloaterjoystick.h | 0 indra/newview/llfloaterlagmeter.cpp | 0 indra/newview/llfloaterlagmeter.h | 0 indra/newview/llfloaterland.cpp | 0 indra/newview/llfloaterland.h | 0 indra/newview/llfloaterlandholdings.cpp | 0 indra/newview/llfloaterlandholdings.h | 0 indra/newview/llfloatermap.cpp | 0 indra/newview/llfloatermap.h | 0 indra/newview/llfloatermediasettings.cpp | 0 indra/newview/llfloatermediasettings.h | 0 indra/newview/llfloatermemleak.cpp | 0 indra/newview/llfloatermemleak.h | 0 indra/newview/llfloatermodelpreview.h | 0 indra/newview/llfloatermodeluploadbase.cpp | 0 indra/newview/llfloatermodeluploadbase.h | 0 indra/newview/llfloaternamedesc.cpp | 0 indra/newview/llfloaternamedesc.h | 0 indra/newview/llfloaternotificationsconsole.cpp | 0 indra/newview/llfloaternotificationsconsole.h | 0 indra/newview/llfloaterobjectweights.cpp | 0 indra/newview/llfloaterobjectweights.h | 0 indra/newview/llfloateropenobject.cpp | 0 indra/newview/llfloateropenobject.h | 0 indra/newview/llfloateroutbox.cpp | 0 indra/newview/llfloateroutbox.h | 0 indra/newview/llfloaterpathfindingcharacters.cpp | 0 indra/newview/llfloaterpathfindingcharacters.h | 0 indra/newview/llfloaterpathfindingconsole.cpp | 0 indra/newview/llfloaterpathfindingconsole.h | 0 indra/newview/llfloaterpathfindinglinksets.cpp | 0 indra/newview/llfloaterpathfindinglinksets.h | 0 indra/newview/llfloaterpathfindingobjects.cpp | 0 indra/newview/llfloaterpathfindingobjects.h | 0 indra/newview/llfloaterpay.cpp | 0 indra/newview/llfloaterpay.h | 0 indra/newview/llfloaterperms.cpp | 0 indra/newview/llfloaterperms.h | 0 indra/newview/llfloaterpostprocess.cpp | 0 indra/newview/llfloaterpostprocess.h | 0 indra/newview/llfloaterpreference.h | 0 indra/newview/llfloaterproperties.cpp | 0 indra/newview/llfloaterproperties.h | 0 indra/newview/llfloaterregiondebugconsole.cpp | 0 indra/newview/llfloaterregiondebugconsole.h | 0 indra/newview/llfloaterregioninfo.cpp | 0 indra/newview/llfloaterregioninfo.h | 0 indra/newview/llfloaterreporter.cpp | 0 indra/newview/llfloaterreporter.h | 0 indra/newview/llfloaterscriptdebug.cpp | 0 indra/newview/llfloaterscriptdebug.h | 0 indra/newview/llfloaterscriptlimits.cpp | 0 indra/newview/llfloaterscriptlimits.h | 0 indra/newview/llfloatersearch.cpp | 0 indra/newview/llfloatersearch.h | 0 indra/newview/llfloatersellland.cpp | 0 indra/newview/llfloatersellland.h | 0 indra/newview/llfloatersettingsdebug.cpp | 0 indra/newview/llfloatersettingsdebug.h | 0 indra/newview/llfloatersidepanelcontainer.cpp | 0 indra/newview/llfloatersidepanelcontainer.h | 0 indra/newview/llfloatersnapshot.cpp | 0 indra/newview/llfloatersnapshot.h | 0 indra/newview/llfloatersounddevices.cpp | 0 indra/newview/llfloatersounddevices.h | 0 indra/newview/llfloaterspellchecksettings.cpp | 0 indra/newview/llfloaterspellchecksettings.h | 0 indra/newview/llfloatertelehub.cpp | 0 indra/newview/llfloatertelehub.h | 0 indra/newview/llfloatertestinspectors.cpp | 0 indra/newview/llfloatertestinspectors.h | 0 indra/newview/llfloatertestlistview.cpp | 0 indra/newview/llfloatertestlistview.h | 0 indra/newview/llfloatertexturefetchdebugger.cpp | 0 indra/newview/llfloatertexturefetchdebugger.h | 0 indra/newview/llfloatertools.cpp | 0 indra/newview/llfloatertools.h | 0 indra/newview/llfloatertopobjects.cpp | 0 indra/newview/llfloatertopobjects.h | 0 indra/newview/llfloatertos.cpp | 0 indra/newview/llfloatertos.h | 0 indra/newview/llfloatertoybox.cpp | 0 indra/newview/llfloatertoybox.h | 0 indra/newview/llfloatertranslationsettings.cpp | 0 indra/newview/llfloatertranslationsettings.h | 0 indra/newview/llfloateruipreview.cpp | 0 indra/newview/llfloateruipreview.h | 0 indra/newview/llfloaterurlentry.cpp | 0 indra/newview/llfloaterurlentry.h | 0 indra/newview/llfloatervoiceeffect.cpp | 0 indra/newview/llfloatervoiceeffect.h | 0 indra/newview/llfloatervoicevolume.cpp | 0 indra/newview/llfloatervoicevolume.h | 0 indra/newview/llfloaterwebcontent.cpp | 0 indra/newview/llfloaterwebcontent.h | 0 indra/newview/llfloaterwebprofile.cpp | 0 indra/newview/llfloaterwebprofile.h | 0 indra/newview/llfloaterwhitelistentry.cpp | 0 indra/newview/llfloaterwhitelistentry.h | 0 indra/newview/llfloaterwindowsize.cpp | 0 indra/newview/llfloaterwindowsize.h | 0 indra/newview/llfloaterworldmap.h | 0 indra/newview/llfolderviewmodelinventory.cpp | 0 indra/newview/llfolderviewmodelinventory.h | 0 indra/newview/llfollowcam.cpp | 0 indra/newview/llfollowcam.h | 0 indra/newview/llfriendcard.cpp | 0 indra/newview/llfriendcard.h | 0 indra/newview/llgesturelistener.cpp | 0 indra/newview/llgesturelistener.h | 0 indra/newview/llgesturemgr.cpp | 0 indra/newview/llgesturemgr.h | 0 indra/newview/llgiveinventory.cpp | 0 indra/newview/llgiveinventory.h | 0 indra/newview/llglsandbox.cpp | 0 indra/newview/llgroupactions.cpp | 0 indra/newview/llgroupactions.h | 0 indra/newview/llgroupiconctrl.cpp | 0 indra/newview/llgroupiconctrl.h | 0 indra/newview/llgrouplist.cpp | 0 indra/newview/llgrouplist.h | 0 indra/newview/llgroupmgr.cpp | 0 indra/newview/llgroupmgr.h | 0 indra/newview/llhints.cpp | 0 indra/newview/llhints.h | 0 indra/newview/llhomelocationresponder.cpp | 0 indra/newview/llhomelocationresponder.h | 0 indra/newview/llhudeffect.cpp | 0 indra/newview/llhudeffect.h | 0 indra/newview/llhudeffectbeam.cpp | 0 indra/newview/llhudeffectbeam.h | 0 indra/newview/llhudeffectblob.cpp | 0 indra/newview/llhudeffectblob.h | 0 indra/newview/llhudeffectlookat.cpp | 0 indra/newview/llhudeffectlookat.h | 0 indra/newview/llhudeffectpointat.cpp | 0 indra/newview/llhudeffectpointat.h | 0 indra/newview/llhudeffecttrail.cpp | 0 indra/newview/llhudeffecttrail.h | 0 indra/newview/llhudicon.cpp | 0 indra/newview/llhudicon.h | 0 indra/newview/llhudmanager.cpp | 0 indra/newview/llhudmanager.h | 0 indra/newview/llhudnametag.cpp | 0 indra/newview/llhudnametag.h | 0 indra/newview/llhudobject.cpp | 0 indra/newview/llhudobject.h | 0 indra/newview/llhudrender.cpp | 0 indra/newview/llhudrender.h | 0 indra/newview/llhudtext.cpp | 0 indra/newview/llhudtext.h | 0 indra/newview/llhudview.cpp | 0 indra/newview/llhudview.h | 0 indra/newview/llimhandler.cpp | 0 indra/newview/llimpanel.cpp | 0 indra/newview/llimpanel.h | 0 indra/newview/llimview.cpp | 0 indra/newview/llimview.h | 0 indra/newview/llinspect.cpp | 0 indra/newview/llinspect.h | 0 indra/newview/llinspectavatar.cpp | 0 indra/newview/llinspectavatar.h | 0 indra/newview/llinspectgroup.cpp | 0 indra/newview/llinspectgroup.h | 0 indra/newview/llinspectobject.cpp | 0 indra/newview/llinspectobject.h | 0 indra/newview/llinspectremoteobject.cpp | 0 indra/newview/llinspectremoteobject.h | 0 indra/newview/llinspecttoast.cpp | 0 indra/newview/llinspecttoast.h | 0 indra/newview/llinventoryactions.h | 0 indra/newview/llinventorybridge.cpp | 0 indra/newview/llinventorybridge.h | 0 indra/newview/llinventoryclipboard.cpp | 0 indra/newview/llinventoryclipboard.h | 0 indra/newview/llinventoryfilter.cpp | 0 indra/newview/llinventoryfilter.h | 0 indra/newview/llinventoryfunctions.cpp | 0 indra/newview/llinventoryfunctions.h | 0 indra/newview/llinventoryicon.cpp | 0 indra/newview/llinventoryicon.h | 0 indra/newview/llinventoryitemslist.cpp | 0 indra/newview/llinventoryitemslist.h | 0 indra/newview/llinventorylistitem.cpp | 0 indra/newview/llinventorylistitem.h | 0 indra/newview/llinventorymodel.cpp | 0 indra/newview/llinventorymodel.h | 0 indra/newview/llinventorymodelbackgroundfetch.cpp | 0 indra/newview/llinventorymodelbackgroundfetch.h | 0 indra/newview/llinventoryobserver.cpp | 0 indra/newview/llinventoryobserver.h | 0 indra/newview/llinventorypanel.cpp | 0 indra/newview/llinventorypanel.h | 0 indra/newview/lljoystickbutton.cpp | 0 indra/newview/lljoystickbutton.h | 0 indra/newview/lllandmarkactions.cpp | 0 indra/newview/lllandmarkactions.h | 0 indra/newview/lllandmarklist.cpp | 0 indra/newview/lllandmarklist.h | 0 indra/newview/lllightconstants.h | 0 indra/newview/lllistbrowser.cpp | 0 indra/newview/lllistbrowser.h | 0 indra/newview/lllistcontextmenu.cpp | 0 indra/newview/lllistcontextmenu.h | 0 indra/newview/lllistview.cpp | 0 indra/newview/lllistview.h | 0 indra/newview/lllocalbitmaps.cpp | 0 indra/newview/lllocalbitmaps.h | 0 indra/newview/lllocaltextureobject.cpp | 0 indra/newview/lllocaltextureobject.h | 0 indra/newview/lllocationhistory.cpp | 0 indra/newview/lllocationhistory.h | 0 indra/newview/lllocationinputctrl.cpp | 0 indra/newview/lllocationinputctrl.h | 0 indra/newview/lllogchat.cpp | 0 indra/newview/lllogchat.h | 0 indra/newview/llloginhandler.cpp | 0 indra/newview/llloginhandler.h | 0 indra/newview/lllogininstance.cpp | 0 indra/newview/lllogininstance.h | 0 indra/newview/lllookshistorypanel.h | 0 indra/newview/llmachineid.cpp | 0 indra/newview/llmachineid.h | 0 indra/newview/llmainlooprepeater.cpp | 0 indra/newview/llmainlooprepeater.h | 0 indra/newview/llmanip.cpp | 0 indra/newview/llmanip.h | 0 indra/newview/llmaniprotate.cpp | 0 indra/newview/llmaniprotate.h | 0 indra/newview/llmanipscale.cpp | 0 indra/newview/llmanipscale.h | 0 indra/newview/llmaniptranslate.cpp | 0 indra/newview/llmaniptranslate.h | 0 indra/newview/llmarketplacefunctions.cpp | 0 indra/newview/llmarketplacefunctions.h | 0 indra/newview/llmarketplacenotifications.cpp | 0 indra/newview/llmarketplacenotifications.h | 0 indra/newview/llmediactrl.cpp | 0 indra/newview/llmediactrl.h | 0 indra/newview/llmediadataclient.cpp | 0 indra/newview/llmediadataclient.h | 0 indra/newview/llmenuoptionpathfindingrebakenavmesh.cpp | 0 indra/newview/llmenuoptionpathfindingrebakenavmesh.h | 0 indra/newview/llmeshrepository.h | 0 indra/newview/llmimetypes.cpp | 0 indra/newview/llmimetypes.h | 0 indra/newview/llmorphview.cpp | 0 indra/newview/llmorphview.h | 0 indra/newview/llmoveview.cpp | 0 indra/newview/llmoveview.h | 0 indra/newview/llmutelist.cpp | 0 indra/newview/llmutelist.h | 0 indra/newview/llnamebox.cpp | 0 indra/newview/llnamebox.h | 0 indra/newview/llnameeditor.cpp | 0 indra/newview/llnameeditor.h | 0 indra/newview/llnamelistctrl.cpp | 0 indra/newview/llnamelistctrl.h | 0 indra/newview/llnavigationbar.cpp | 0 indra/newview/llnavigationbar.h | 0 indra/newview/llnetmap.cpp | 0 indra/newview/llnetmap.h | 0 indra/newview/llnotificationalerthandler.cpp | 0 indra/newview/llnotificationgrouphandler.cpp | 0 indra/newview/llnotificationhandler.h | 0 indra/newview/llnotificationhandlerutil.cpp | 0 indra/newview/llnotificationhinthandler.cpp | 0 indra/newview/llnotificationmanager.cpp | 0 indra/newview/llnotificationmanager.h | 0 indra/newview/llnotificationofferhandler.cpp | 0 indra/newview/llnotificationscripthandler.cpp | 0 indra/newview/llnotificationstorage.cpp | 0 indra/newview/llnotificationstorage.h | 0 indra/newview/llnotificationtiphandler.cpp | 0 indra/newview/lloutfitobserver.cpp | 0 indra/newview/lloutfitobserver.h | 0 indra/newview/lloutfitslist.cpp | 0 indra/newview/lloutfitslist.h | 0 indra/newview/lloutputmonitorctrl.cpp | 0 indra/newview/lloutputmonitorctrl.h | 0 indra/newview/llpanelappearancetab.cpp | 0 indra/newview/llpanelappearancetab.h | 0 indra/newview/llpanelavatar.cpp | 0 indra/newview/llpanelavatar.h | 0 indra/newview/llpanelavatartag.cpp | 0 indra/newview/llpanelavatartag.h | 0 indra/newview/llpanelblockedlist.cpp | 0 indra/newview/llpanelblockedlist.h | 0 indra/newview/llpanelclassified.cpp | 0 indra/newview/llpanelclassified.h | 0 indra/newview/llpanelcontents.cpp | 0 indra/newview/llpanelcontents.h | 0 indra/newview/llpaneleditwearable.cpp | 0 indra/newview/llpaneleditwearable.h | 0 indra/newview/llpanelface.cpp | 0 indra/newview/llpanelface.h | 0 indra/newview/llpanelgenerictip.cpp | 0 indra/newview/llpanelgenerictip.h | 0 indra/newview/llpanelgroup.cpp | 0 indra/newview/llpanelgroup.h | 0 indra/newview/llpanelgroupgeneral.cpp | 0 indra/newview/llpanelgroupgeneral.h | 0 indra/newview/llpanelgroupinvite.cpp | 0 indra/newview/llpanelgroupinvite.h | 0 indra/newview/llpanelgrouplandmoney.cpp | 0 indra/newview/llpanelgrouplandmoney.h | 0 indra/newview/llpanelgroupnotices.cpp | 0 indra/newview/llpanelgroupnotices.h | 0 indra/newview/llpanelgrouproles.cpp | 0 indra/newview/llpanelgrouproles.h | 0 indra/newview/llpanelhome.cpp | 0 indra/newview/llpanelhome.h | 0 indra/newview/llpanelimcontrolpanel.cpp | 0 indra/newview/llpanelimcontrolpanel.h | 0 indra/newview/llpanelland.cpp | 0 indra/newview/llpanelland.h | 0 indra/newview/llpanellandaudio.cpp | 0 indra/newview/llpanellandaudio.h | 0 indra/newview/llpanellandmarkinfo.cpp | 0 indra/newview/llpanellandmarkinfo.h | 0 indra/newview/llpanellandmarks.cpp | 0 indra/newview/llpanellandmarks.h | 0 indra/newview/llpanellandmedia.cpp | 0 indra/newview/llpanellandmedia.h | 0 indra/newview/llpanellogin.cpp | 0 indra/newview/llpanellogin.h | 0 indra/newview/llpanelloginlistener.cpp | 0 indra/newview/llpanelloginlistener.h | 0 indra/newview/llpanelmaininventory.cpp | 0 indra/newview/llpanelmaininventory.h | 0 indra/newview/llpanelmarketplaceinbox.cpp | 0 indra/newview/llpanelmarketplaceinbox.h | 0 indra/newview/llpanelmarketplaceinboxinventory.cpp | 0 indra/newview/llpanelmarketplaceinboxinventory.h | 0 indra/newview/llpanelme.cpp | 0 indra/newview/llpanelme.h | 0 indra/newview/llpanelmediasettingsgeneral.cpp | 0 indra/newview/llpanelmediasettingsgeneral.h | 0 indra/newview/llpanelmediasettingspermissions.cpp | 0 indra/newview/llpanelmediasettingspermissions.h | 0 indra/newview/llpanelmediasettingssecurity.cpp | 0 indra/newview/llpanelmediasettingssecurity.h | 0 indra/newview/llpanelnearbymedia.cpp | 0 indra/newview/llpanelnearbymedia.h | 0 indra/newview/llpanelobject.cpp | 0 indra/newview/llpanelobject.h | 0 indra/newview/llpanelobjectinventory.cpp | 0 indra/newview/llpanelobjectinventory.h | 0 indra/newview/llpanelonlinestatus.cpp | 0 indra/newview/llpanelonlinestatus.h | 0 indra/newview/llpaneloutfitedit.cpp | 0 indra/newview/llpaneloutfitedit.h | 0 indra/newview/llpaneloutfitsinventory.cpp | 0 indra/newview/llpaneloutfitsinventory.h | 0 indra/newview/llpanelpeople.cpp | 0 indra/newview/llpanelpeople.h | 0 indra/newview/llpanelpeoplemenus.cpp | 0 indra/newview/llpanelpeoplemenus.h | 0 indra/newview/llpanelpermissions.cpp | 0 indra/newview/llpanelpermissions.h | 0 indra/newview/llpanelpick.cpp | 0 indra/newview/llpanelpick.h | 0 indra/newview/llpanelplaceinfo.cpp | 0 indra/newview/llpanelplaceinfo.h | 0 indra/newview/llpanelplaceprofile.cpp | 0 indra/newview/llpanelplaceprofile.h | 0 indra/newview/llpanelplaces.cpp | 0 indra/newview/llpanelplaces.h | 0 indra/newview/llpanelplacestab.cpp | 0 indra/newview/llpanelplacestab.h | 0 indra/newview/llpanelprimmediacontrols.cpp | 0 indra/newview/llpanelprimmediacontrols.h | 0 indra/newview/llpanelsnapshot.cpp | 0 indra/newview/llpanelsnapshot.h | 0 indra/newview/llpanelsnapshotinventory.cpp | 0 indra/newview/llpanelsnapshotlocal.cpp | 0 indra/newview/llpanelsnapshotoptions.cpp | 0 indra/newview/llpanelsnapshotpostcard.cpp | 0 indra/newview/llpanelsnapshotprofile.cpp | 0 indra/newview/llpanelteleporthistory.cpp | 0 indra/newview/llpanelteleporthistory.h | 0 indra/newview/llpaneltiptoast.cpp | 0 indra/newview/llpaneltiptoast.h | 0 indra/newview/llpaneltopinfobar.cpp | 0 indra/newview/llpaneltopinfobar.h | 0 indra/newview/llpanelvoicedevicesettings.cpp | 0 indra/newview/llpanelvoicedevicesettings.h | 0 indra/newview/llpanelvoiceeffect.cpp | 0 indra/newview/llpanelvoiceeffect.h | 0 indra/newview/llpanelvolume.cpp | 0 indra/newview/llpanelvolume.h | 0 indra/newview/llpanelvolumepulldown.cpp | 0 indra/newview/llpanelvolumepulldown.h | 0 indra/newview/llpanelwearing.cpp | 0 indra/newview/llpanelwearing.h | 0 indra/newview/llparcelselection.cpp | 0 indra/newview/llparcelselection.h | 0 indra/newview/llparticipantlist.cpp | 0 indra/newview/llparticipantlist.h | 0 indra/newview/llpatchvertexarray.cpp | 0 indra/newview/llpatchvertexarray.h | 0 indra/newview/llpathfindingcharacter.cpp | 0 indra/newview/llpathfindingcharacter.h | 0 indra/newview/llpathfindingcharacterlist.cpp | 0 indra/newview/llpathfindingcharacterlist.h | 0 indra/newview/llpathfindinglinkset.cpp | 0 indra/newview/llpathfindinglinkset.h | 0 indra/newview/llpathfindinglinksetlist.cpp | 0 indra/newview/llpathfindinglinksetlist.h | 0 indra/newview/llpathfindingmanager.cpp | 0 indra/newview/llpathfindingmanager.h | 0 indra/newview/llpathfindingnavmesh.cpp | 0 indra/newview/llpathfindingnavmesh.h | 0 indra/newview/llpathfindingnavmeshstatus.cpp | 0 indra/newview/llpathfindingnavmeshstatus.h | 0 indra/newview/llpathfindingnavmeshzone.cpp | 0 indra/newview/llpathfindingnavmeshzone.h | 0 indra/newview/llpathfindingobject.cpp | 0 indra/newview/llpathfindingobject.h | 0 indra/newview/llpathfindingobjectlist.cpp | 0 indra/newview/llpathfindingobjectlist.h | 0 indra/newview/llpathfindingpathtool.cpp | 0 indra/newview/llpathfindingpathtool.h | 0 indra/newview/llpersistentnotificationstorage.cpp | 0 indra/newview/llpersistentnotificationstorage.h | 0 indra/newview/llphysicsmotion.cpp | 0 indra/newview/llphysicsmotion.h | 0 indra/newview/llphysicsshapebuilderutil.cpp | 0 indra/newview/llphysicsshapebuilderutil.h | 0 indra/newview/llplacesfolderview.cpp | 0 indra/newview/llplacesfolderview.h | 0 indra/newview/llplacesinventorybridge.cpp | 0 indra/newview/llplacesinventorybridge.h | 0 indra/newview/llplacesinventorypanel.cpp | 0 indra/newview/llplacesinventorypanel.h | 0 indra/newview/llpolymesh.cpp | 0 indra/newview/llpolymesh.h | 0 indra/newview/llpolymorph.cpp | 0 indra/newview/llpolymorph.h | 0 indra/newview/llpopupview.cpp | 0 indra/newview/llpopupview.h | 0 indra/newview/llpostcard.cpp | 0 indra/newview/llpostcard.h | 0 indra/newview/llpreview.cpp | 0 indra/newview/llpreview.h | 0 indra/newview/llpreviewanim.cpp | 0 indra/newview/llpreviewanim.h | 0 indra/newview/llpreviewgesture.cpp | 0 indra/newview/llpreviewgesture.h | 0 indra/newview/llpreviewnotecard.cpp | 0 indra/newview/llpreviewnotecard.h | 0 indra/newview/llpreviewscript.cpp | 0 indra/newview/llpreviewscript.h | 0 indra/newview/llpreviewsound.cpp | 0 indra/newview/llpreviewsound.h | 0 indra/newview/llpreviewtexture.cpp | 0 indra/newview/llpreviewtexture.h | 0 indra/newview/llproductinforequest.cpp | 0 indra/newview/llproductinforequest.h | 0 indra/newview/llprogressview.cpp | 0 indra/newview/llprogressview.h | 0 indra/newview/llrecentpeople.cpp | 0 indra/newview/llrecentpeople.h | 0 indra/newview/llregioninfomodel.cpp | 0 indra/newview/llregioninfomodel.h | 0 indra/newview/llregionposition.cpp | 0 indra/newview/llregionposition.h | 0 indra/newview/llremoteparcelrequest.cpp | 0 indra/newview/llremoteparcelrequest.h | 0 indra/newview/llresourcedata.h | 0 indra/newview/llrootview.h | 0 indra/newview/llsavedsettingsglue.cpp | 0 indra/newview/llsavedsettingsglue.h | 0 indra/newview/llsaveoutfitcombobtn.cpp | 0 indra/newview/llsaveoutfitcombobtn.h | 0 indra/newview/llsceneview.cpp | 0 indra/newview/llsceneview.h | 0 indra/newview/llscreenchannel.cpp | 0 indra/newview/llscreenchannel.h | 0 indra/newview/llscriptfloater.cpp | 0 indra/newview/llscriptfloater.h | 0 indra/newview/llscrollingpanelparam.cpp | 0 indra/newview/llscrollingpanelparam.h | 0 indra/newview/llscrollingpanelparambase.cpp | 0 indra/newview/llscrollingpanelparambase.h | 0 indra/newview/llsearchcombobox.cpp | 0 indra/newview/llsearchcombobox.h | 0 indra/newview/llsearchhistory.cpp | 0 indra/newview/llsearchhistory.h | 0 indra/newview/llsecapi.cpp | 0 indra/newview/llsecapi.h | 0 indra/newview/llsechandler_basic.cpp | 0 indra/newview/llsechandler_basic.h | 0 indra/newview/llselectmgr.cpp | 0 indra/newview/llselectmgr.h | 0 indra/newview/llshareavatarhandler.cpp | 0 indra/newview/llsidepanelappearance.cpp | 0 indra/newview/llsidepanelappearance.h | 0 indra/newview/llsidepanelinventory.cpp | 0 indra/newview/llsidepanelinventory.h | 0 indra/newview/llsidepanelinventorysubpanel.cpp | 0 indra/newview/llsidepanelinventorysubpanel.h | 0 indra/newview/llsidepaneliteminfo.cpp | 0 indra/newview/llsidepaneliteminfo.h | 0 indra/newview/llsidepaneltaskinfo.cpp | 0 indra/newview/llsidepaneltaskinfo.h | 0 indra/newview/llsidetraypanelcontainer.cpp | 0 indra/newview/llsidetraypanelcontainer.h | 0 indra/newview/llsimplestat.h | 0 indra/newview/llsky.cpp | 0 indra/newview/llsky.h | 0 indra/newview/llslurl.cpp | 0 indra/newview/llslurl.h | 0 indra/newview/llspatialpartition.cpp | 0 indra/newview/llspatialpartition.h | 0 indra/newview/llspeakers.cpp | 0 indra/newview/llspeakers.h | 0 indra/newview/llspeakingindicatormanager.cpp | 0 indra/newview/llspeakingindicatormanager.h | 0 indra/newview/llsplitbutton.cpp | 0 indra/newview/llsplitbutton.h | 0 indra/newview/llsprite.cpp | 0 indra/newview/llsprite.h | 0 indra/newview/llsrv.cpp | 0 indra/newview/llsrv.h | 0 indra/newview/llstartup.cpp | 0 indra/newview/llstartup.h | 0 indra/newview/llstartuplistener.cpp | 0 indra/newview/llstartuplistener.h | 0 indra/newview/llstatusbar.cpp | 0 indra/newview/llstatusbar.h | 0 indra/newview/llstylemap.cpp | 0 indra/newview/llstylemap.h | 0 indra/newview/llsurface.cpp | 0 indra/newview/llsurface.h | 0 indra/newview/llsurfacepatch.cpp | 0 indra/newview/llsurfacepatch.h | 0 indra/newview/llsyswellitem.cpp | 0 indra/newview/llsyswellitem.h | 0 indra/newview/llsyswellwindow.cpp | 0 indra/newview/llsyswellwindow.h | 0 indra/newview/lltable.h | 0 indra/newview/llteleporthistory.cpp | 0 indra/newview/llteleporthistory.h | 0 indra/newview/llteleporthistorystorage.cpp | 0 indra/newview/llteleporthistorystorage.h | 0 indra/newview/lltexglobalcolor.cpp | 0 indra/newview/lltexglobalcolor.h | 0 indra/newview/lltexlayer.cpp | 0 indra/newview/lltexlayer.h | 0 indra/newview/lltexlayerparams.cpp | 0 indra/newview/lltexlayerparams.h | 0 indra/newview/lltextureatlas.cpp | 0 indra/newview/lltextureatlas.h | 0 indra/newview/lltextureatlasmanager.cpp | 0 indra/newview/lltextureatlasmanager.h | 0 indra/newview/lltexturecache.cpp | 0 indra/newview/lltexturecache.h | 0 indra/newview/lltexturectrl.cpp | 0 indra/newview/lltexturectrl.h | 0 indra/newview/lltexturefetch.h | 0 indra/newview/lltextureinfo.cpp | 0 indra/newview/lltextureinfo.h | 0 indra/newview/lltextureinfodetails.cpp | 0 indra/newview/lltextureinfodetails.h | 0 indra/newview/lltexturestats.cpp | 0 indra/newview/lltexturestats.h | 0 indra/newview/lltexturestatsuploader.cpp | 0 indra/newview/lltexturestatsuploader.h | 0 indra/newview/lltextureview.cpp | 0 indra/newview/lltextureview.h | 0 indra/newview/lltoast.cpp | 0 indra/newview/lltoast.h | 0 indra/newview/lltoastalertpanel.cpp | 0 indra/newview/lltoastalertpanel.h | 0 indra/newview/lltoastgroupnotifypanel.cpp | 0 indra/newview/lltoastgroupnotifypanel.h | 0 indra/newview/lltoastimpanel.cpp | 0 indra/newview/lltoastimpanel.h | 0 indra/newview/lltoastnotifypanel.cpp | 0 indra/newview/lltoastnotifypanel.h | 0 indra/newview/lltoastpanel.cpp | 0 indra/newview/lltoastpanel.h | 0 indra/newview/lltoastscriptquestion.cpp | 0 indra/newview/lltoastscriptquestion.h | 0 indra/newview/lltoastscripttextbox.cpp | 0 indra/newview/lltoastscripttextbox.h | 0 indra/newview/lltool.cpp | 0 indra/newview/lltool.h | 0 indra/newview/lltoolbarview.cpp | 0 indra/newview/lltoolbarview.h | 0 indra/newview/lltoolbrush.cpp | 0 indra/newview/lltoolbrush.h | 0 indra/newview/lltoolcomp.cpp | 0 indra/newview/lltoolcomp.h | 0 indra/newview/lltooldraganddrop.cpp | 0 indra/newview/lltooldraganddrop.h | 0 indra/newview/lltoolface.cpp | 0 indra/newview/lltoolface.h | 0 indra/newview/lltoolfocus.cpp | 0 indra/newview/lltoolfocus.h | 0 indra/newview/lltoolgrab.cpp | 0 indra/newview/lltoolgrab.h | 0 indra/newview/lltoolgun.cpp | 0 indra/newview/lltoolgun.h | 0 indra/newview/lltoolindividual.cpp | 0 indra/newview/lltoolindividual.h | 0 indra/newview/lltoolmgr.cpp | 0 indra/newview/lltoolmgr.h | 0 indra/newview/lltoolmorph.cpp | 0 indra/newview/lltoolmorph.h | 0 indra/newview/lltoolobjpicker.cpp | 0 indra/newview/lltoolobjpicker.h | 0 indra/newview/lltoolpie.cpp | 0 indra/newview/lltoolpie.h | 0 indra/newview/lltoolpipette.cpp | 0 indra/newview/lltoolpipette.h | 0 indra/newview/lltoolplacer.cpp | 0 indra/newview/lltoolplacer.h | 0 indra/newview/lltoolselect.cpp | 0 indra/newview/lltoolselect.h | 0 indra/newview/lltoolselectland.cpp | 0 indra/newview/lltoolselectland.h | 0 indra/newview/lltoolselectrect.cpp | 0 indra/newview/lltoolselectrect.h | 0 indra/newview/lltoolview.cpp | 0 indra/newview/lltoolview.h | 0 indra/newview/lltracker.cpp | 0 indra/newview/lltracker.h | 0 indra/newview/lltransientdockablefloater.cpp | 0 indra/newview/lltransientdockablefloater.h | 0 indra/newview/lltransientfloatermgr.cpp | 0 indra/newview/lltransientfloatermgr.h | 0 indra/newview/lluiconstants.h | 0 indra/newview/lluilistener.cpp | 0 indra/newview/lluilistener.h | 0 indra/newview/lluploaddialog.cpp | 0 indra/newview/lluploaddialog.h | 0 indra/newview/lluploadfloaterobservers.cpp | 0 indra/newview/lluploadfloaterobservers.h | 0 indra/newview/llurl.cpp | 0 indra/newview/llurl.h | 0 indra/newview/llurldispatcher.cpp | 0 indra/newview/llurldispatcher.h | 0 indra/newview/llurldispatcherlistener.cpp | 0 indra/newview/llurldispatcherlistener.h | 0 indra/newview/llurlhistory.cpp | 0 indra/newview/llurlhistory.h | 0 indra/newview/llurllineeditorctrl.cpp | 0 indra/newview/llurllineeditorctrl.h | 0 indra/newview/llurlwhitelist.cpp | 0 indra/newview/llurlwhitelist.h | 0 indra/newview/llvectorperfoptions.cpp | 0 indra/newview/llvectorperfoptions.h | 0 indra/newview/llversioninfo.cpp | 0 indra/newview/llversioninfo.h | 0 indra/newview/llviewchildren.cpp | 0 indra/newview/llviewchildren.h | 0 indra/newview/llviewerassetstats.cpp | 0 indra/newview/llviewerassetstats.h | 0 indra/newview/llviewerassetstorage.cpp | 0 indra/newview/llviewerassetstorage.h | 0 indra/newview/llviewerassettype.cpp | 0 indra/newview/llviewerassettype.h | 0 indra/newview/llviewerattachmenu.cpp | 0 indra/newview/llviewerattachmenu.h | 0 indra/newview/llvieweraudio.cpp | 0 indra/newview/llvieweraudio.h | 0 indra/newview/llviewercamera.cpp | 0 indra/newview/llviewercamera.h | 0 indra/newview/llviewerchat.cpp | 0 indra/newview/llviewerchat.h | 0 indra/newview/llviewercontrol.cpp | 0 indra/newview/llviewercontrol.h | 0 indra/newview/llviewercontrollistener.cpp | 0 indra/newview/llviewercontrollistener.h | 0 indra/newview/llviewerdisplay.cpp | 0 indra/newview/llviewerdisplay.h | 0 indra/newview/llviewerdisplayname.cpp | 0 indra/newview/llviewerdisplayname.h | 0 indra/newview/llviewerfloaterreg.cpp | 0 indra/newview/llviewerfloaterreg.h | 0 indra/newview/llviewerfoldertype.h | 0 indra/newview/llviewergenericmessage.cpp | 0 indra/newview/llviewergenericmessage.h | 0 indra/newview/llviewergesture.cpp | 0 indra/newview/llviewergesture.h | 0 indra/newview/llviewerhelp.cpp | 0 indra/newview/llviewerhelp.h | 0 indra/newview/llviewerhelputil.cpp | 0 indra/newview/llviewerhelputil.h | 0 indra/newview/llviewerhome.cpp | 0 indra/newview/llviewerhome.h | 0 indra/newview/llviewerinventory.cpp | 0 indra/newview/llviewerinventory.h | 0 indra/newview/llviewerjoint.cpp | 0 indra/newview/llviewerjoint.h | 0 indra/newview/llviewerjointattachment.cpp | 0 indra/newview/llviewerjointattachment.h | 0 indra/newview/llviewerjointmesh.cpp | 0 indra/newview/llviewerjointmesh.h | 0 indra/newview/llviewerjoystick.cpp | 0 indra/newview/llviewerjoystick.h | 0 indra/newview/llviewerkeyboard.cpp | 0 indra/newview/llviewerkeyboard.h | 0 indra/newview/llviewerlayer.cpp | 0 indra/newview/llviewerlayer.h | 0 indra/newview/llviewermedia.cpp | 0 indra/newview/llviewermedia.h | 0 indra/newview/llviewermedia_streamingaudio.cpp | 0 indra/newview/llviewermedia_streamingaudio.h | 0 indra/newview/llviewermediafocus.cpp | 0 indra/newview/llviewermediafocus.h | 0 indra/newview/llviewermediaobserver.h | 0 indra/newview/llviewermenu.cpp | 0 indra/newview/llviewermenu.h | 0 indra/newview/llviewermenufile.cpp | 0 indra/newview/llviewermenufile.h | 0 indra/newview/llviewermessage.h | 0 indra/newview/llviewernetwork.cpp | 0 indra/newview/llviewernetwork.h | 0 indra/newview/llviewerobject.cpp | 0 indra/newview/llviewerobject.h | 0 indra/newview/llviewerobjectlist.cpp | 0 indra/newview/llviewerobjectlist.h | 0 indra/newview/llviewerparcelmedia.cpp | 0 indra/newview/llviewerparcelmedia.h | 0 indra/newview/llviewerparcelmediaautoplay.cpp | 0 indra/newview/llviewerparcelmediaautoplay.h | 0 indra/newview/llviewerparcelmgr.cpp | 0 indra/newview/llviewerparcelmgr.h | 0 indra/newview/llviewerparceloverlay.cpp | 0 indra/newview/llviewerparceloverlay.h | 0 indra/newview/llviewerpartsim.cpp | 0 indra/newview/llviewerpartsim.h | 0 indra/newview/llviewerpartsource.cpp | 0 indra/newview/llviewerpartsource.h | 0 indra/newview/llviewerprecompiledheaders.cpp | 0 indra/newview/llviewerprecompiledheaders.h | 0 indra/newview/llviewerregion.cpp | 0 indra/newview/llviewerregion.h | 0 indra/newview/llviewershadermgr.cpp | 0 indra/newview/llviewershadermgr.h | 0 indra/newview/llviewerstats.cpp | 0 indra/newview/llviewerstats.h | 0 indra/newview/llviewerstatsrecorder.cpp | 0 indra/newview/llviewerstatsrecorder.h | 0 indra/newview/llviewertexteditor.cpp | 0 indra/newview/llviewertexteditor.h | 0 indra/newview/llviewertexture.cpp | 0 indra/newview/llviewertexture.h | 0 indra/newview/llviewertextureanim.cpp | 0 indra/newview/llviewertextureanim.h | 0 indra/newview/llviewertexturelist.cpp | 0 indra/newview/llviewertexturelist.h | 0 indra/newview/llviewerthrottle.cpp | 0 indra/newview/llviewerthrottle.h | 0 indra/newview/llviewervisualparam.cpp | 0 indra/newview/llviewervisualparam.h | 0 indra/newview/llviewerwindow.h | 0 indra/newview/llviewerwindowlistener.cpp | 0 indra/newview/llviewerwindowlistener.h | 0 indra/newview/llvlcomposition.cpp | 0 indra/newview/llvlcomposition.h | 0 indra/newview/llvlmanager.cpp | 0 indra/newview/llvlmanager.h | 0 indra/newview/llvoavatar.cpp | 0 indra/newview/llvoavatar.h | 0 indra/newview/llvoavatardefines.cpp | 0 indra/newview/llvoavatardefines.h | 0 indra/newview/llvoavatarself.cpp | 0 indra/newview/llvoavatarself.h | 0 indra/newview/llvocache.cpp | 0 indra/newview/llvocache.h | 0 indra/newview/llvograss.cpp | 0 indra/newview/llvograss.h | 0 indra/newview/llvoground.cpp | 0 indra/newview/llvoground.h | 0 indra/newview/llvoicecallhandler.cpp | 0 indra/newview/llvoicechannel.cpp | 0 indra/newview/llvoicechannel.h | 0 indra/newview/llvoiceclient.cpp | 0 indra/newview/llvoiceclient.h | 0 indra/newview/llvoicevisualizer.cpp | 0 indra/newview/llvoicevisualizer.h | 0 indra/newview/llvoicevivox.cpp | 0 indra/newview/llvoicevivox.h | 0 indra/newview/llvoinventorylistener.cpp | 0 indra/newview/llvoinventorylistener.h | 0 indra/newview/llvopartgroup.cpp | 0 indra/newview/llvopartgroup.h | 0 indra/newview/llvosky.cpp | 0 indra/newview/llvosky.h | 0 indra/newview/llvosurfacepatch.cpp | 0 indra/newview/llvosurfacepatch.h | 0 indra/newview/llvotree.cpp | 0 indra/newview/llvotree.h | 0 indra/newview/llvotreenew.h | 0 indra/newview/llvovolume.cpp | 0 indra/newview/llvovolume.h | 0 indra/newview/llvowater.cpp | 0 indra/newview/llvowater.h | 0 indra/newview/llvowlsky.cpp | 0 indra/newview/llvowlsky.h | 0 indra/newview/llwatchdog.cpp | 0 indra/newview/llwatchdog.h | 0 indra/newview/llwaterparammanager.cpp | 0 indra/newview/llwaterparammanager.h | 0 indra/newview/llwaterparamset.cpp | 0 indra/newview/llwaterparamset.h | 0 indra/newview/llwearable.cpp | 0 indra/newview/llwearable.h | 0 indra/newview/llwearableitemslist.cpp | 0 indra/newview/llwearableitemslist.h | 0 indra/newview/llwearablelist.cpp | 0 indra/newview/llwearablelist.h | 0 indra/newview/llwearabletype.cpp | 0 indra/newview/llwearabletype.h | 0 indra/newview/llweb.cpp | 0 indra/newview/llweb.h | 0 indra/newview/llwebprofile.cpp | 0 indra/newview/llwebprofile.h | 0 indra/newview/llwebsharing.cpp | 0 indra/newview/llwebsharing.h | 0 indra/newview/llwind.cpp | 0 indra/newview/llwind.h | 0 indra/newview/llwindebug.cpp | 0 indra/newview/llwindebug.h | 0 indra/newview/llwindowlistener.cpp | 0 indra/newview/llwindowlistener.h | 0 indra/newview/llwlanimator.cpp | 0 indra/newview/llwlanimator.h | 0 indra/newview/llwldaycycle.cpp | 0 indra/newview/llwldaycycle.h | 0 indra/newview/llwlhandlers.cpp | 0 indra/newview/llwlhandlers.h | 0 indra/newview/llwlparammanager.cpp | 0 indra/newview/llwlparammanager.h | 0 indra/newview/llwlparamset.cpp | 0 indra/newview/llwlparamset.h | 0 indra/newview/llworld.cpp | 0 indra/newview/llworld.h | 0 indra/newview/llworldmap.cpp | 0 indra/newview/llworldmap.h | 0 indra/newview/llworldmapmessage.cpp | 0 indra/newview/llworldmapmessage.h | 0 indra/newview/llworldmapview.cpp | 0 indra/newview/llworldmapview.h | 0 indra/newview/llworldmipmap.cpp | 0 indra/newview/llworldmipmap.h | 0 indra/newview/llxmlrpclistener.cpp | 0 indra/newview/llxmlrpclistener.h | 0 indra/newview/llxmlrpctransaction.cpp | 0 indra/newview/llxmlrpctransaction.h | 0 indra/newview/macmain.h | 0 indra/newview/macutil_Prefix.h | 0 indra/newview/macview.r | 0 indra/newview/macview_Prefix.h | 0 indra/newview/nl.lproj/language.txt | 0 indra/newview/noise.cpp | 0 indra/newview/noise.h | 0 indra/newview/pipeline.cpp | 0 indra/newview/pipeline.h | 0 indra/newview/pl.lproj/language.txt | 0 indra/newview/pt.lproj/language.txt | 0 indra/newview/res-sdl/arrow.BMP | Bin indra/newview/res-sdl/arrowcop.BMP | Bin indra/newview/res-sdl/arrowcopmulti.BMP | Bin indra/newview/res-sdl/arrowdrag.BMP | Bin indra/newview/res-sdl/circleandline.BMP | Bin indra/newview/res-sdl/cross.BMP | Bin indra/newview/res-sdl/hand.BMP | Bin indra/newview/res-sdl/ibeam.BMP | Bin indra/newview/res-sdl/llarrow.BMP | Bin indra/newview/res-sdl/llarrowdrag.BMP | Bin indra/newview/res-sdl/llarrowdragmulti.BMP | Bin indra/newview/res-sdl/llarrowlocked.BMP | Bin indra/newview/res-sdl/llgrablocked.BMP | Bin indra/newview/res-sdl/llno.BMP | Bin indra/newview/res-sdl/llnolocked.BMP | Bin indra/newview/res-sdl/lltoolcamera.BMP | Bin indra/newview/res-sdl/lltoolcreate.BMP | Bin indra/newview/res-sdl/lltoolfocus.BMP | Bin indra/newview/res-sdl/lltoolgrab.BMP | Bin indra/newview/res-sdl/lltoolland.BMP | Bin indra/newview/res-sdl/lltoolpan.BMP | Bin indra/newview/res-sdl/lltoolpathfinding.BMP | Bin indra/newview/res-sdl/lltoolpathfindingpathend.BMP | Bin indra/newview/res-sdl/lltoolpathfindingpathendadd.BMP | Bin indra/newview/res-sdl/lltoolpathfindingpathstart.BMP | Bin indra/newview/res-sdl/lltoolpathfindingpathstartadd.BMP | Bin indra/newview/res-sdl/lltoolpipette.BMP | Bin indra/newview/res-sdl/lltoolrotate.BMP | Bin indra/newview/res-sdl/lltoolscale.BMP | Bin indra/newview/res-sdl/lltooltranslate.BMP | Bin indra/newview/res-sdl/lltoolzoomin.BMP | Bin indra/newview/res-sdl/lltoolzoomout.BMP | Bin indra/newview/res-sdl/sizenesw.BMP | Bin indra/newview/res-sdl/sizens.BMP | Bin indra/newview/res-sdl/sizenwse.BMP | Bin indra/newview/res-sdl/sizewe.BMP | Bin indra/newview/res-sdl/toolbuy.BMP | Bin indra/newview/res-sdl/toolmediaopen.BMP | Bin indra/newview/res-sdl/toolopen.BMP | Bin indra/newview/res-sdl/toolpause.BMP | Bin indra/newview/res-sdl/toolpickobject.BMP | Bin indra/newview/res-sdl/toolpickobject2.BMP | Bin indra/newview/res-sdl/toolpickobject3.BMP | Bin indra/newview/res-sdl/toolplay.BMP | Bin indra/newview/res-sdl/toolsit.BMP | Bin indra/newview/res-sdl/wait.BMP | Bin indra/newview/res-sdl/working.BMP | Bin indra/newview/res/arrow.cur | Bin indra/newview/res/arrowcop.cur | Bin indra/newview/res/arrowcopmulti.cur | Bin indra/newview/res/arrowdrag.cur | Bin indra/newview/res/bitmap2.bmp | Bin indra/newview/res/circleandline.cur | Bin indra/newview/res/have_artwork_bundle.marker | 0 indra/newview/res/icon1.ico | Bin indra/newview/res/install_icon.BMP | Bin indra/newview/res/llarrow.cur | Bin indra/newview/res/llarrowdrag.cur | Bin indra/newview/res/llarrowdragmulti.cur | Bin indra/newview/res/llarrowlocked.cur | Bin indra/newview/res/llgrablocked.cur | Bin indra/newview/res/llno.cur | Bin indra/newview/res/llnolocked.cur | Bin indra/newview/res/lltoolcamera.cur | Bin indra/newview/res/lltoolcreate.cur | Bin indra/newview/res/lltoolfocus.cur | Bin indra/newview/res/lltoolgrab.cur | Bin indra/newview/res/lltoolland.cur | Bin indra/newview/res/lltoolpan.cur | Bin indra/newview/res/lltoolpathfinding.cur | Bin indra/newview/res/lltoolpathfindingpathend.cur | Bin indra/newview/res/lltoolpathfindingpathendadd.cur | Bin indra/newview/res/lltoolpathfindingpathstart.cur | Bin indra/newview/res/lltoolpathfindingpathstartadd.cur | Bin indra/newview/res/lltoolpipette.cur | Bin indra/newview/res/lltoolrotate.cur | Bin indra/newview/res/lltoolscale.cur | Bin indra/newview/res/lltooltranslate.cur | Bin indra/newview/res/lltoolzoomin.cur | Bin indra/newview/res/lltoolzoomout.cur | Bin indra/newview/res/loginbackground.bmp | Bin indra/newview/res/resource.h | 0 indra/newview/res/toolbuy.cur | Bin indra/newview/res/toolmediaopen.cur | Bin indra/newview/res/toolopen.cur | Bin indra/newview/res/toolpause.cur | Bin indra/newview/res/toolpickobject.cur | Bin indra/newview/res/toolpickobject2.cur | Bin indra/newview/res/toolpickobject3.cur | Bin indra/newview/res/toolpipette.cur | Bin indra/newview/res/toolplay.cur | Bin indra/newview/res/toolsit.cur | Bin indra/newview/res/uninstall_icon.BMP | Bin indra/newview/res/viewerRes.rc | 0 indra/newview/ru.lproj/language.txt | 0 indra/newview/secondlife-i686.supp | 0 indra/newview/secondlife.icns | Bin indra/newview/secondlife_firstlook.icns | Bin indra/newview/skins/default/colors.xml | 0 indra/newview/skins/default/html/btn_purplepill_bg.png | Bin indra/newview/skins/default/html/da/loading/loading.html | 0 .../newview/skins/default/html/de/loading-error/index.html | 0 indra/newview/skins/default/html/de/loading/loading.html | 0 .../skins/default/html/en-us/help-offline/index.html | 0 .../skins/default/html/en-us/loading-error/index.html | 0 indra/newview/skins/default/html/en-us/loading/loading.html | 0 .../default/html/en-us/loading/sl_logo_rotate_black.gif | Bin .../newview/skins/default/html/es/loading-error/index.html | 0 indra/newview/skins/default/html/es/loading/loading.html | 0 .../newview/skins/default/html/fr/loading-error/index.html | 0 indra/newview/skins/default/html/fr/loading/loading.html | 0 indra/newview/skins/default/html/hu/loading/loading.html | 0 indra/newview/skins/default/html/it/loading/loading.html | 0 .../newview/skins/default/html/ja/loading-error/index.html | 0 indra/newview/skins/default/html/ja/loading/loading.html | 0 .../newview/skins/default/html/ko/loading-error/index.html | 0 indra/newview/skins/default/html/nl/loading/loading.html | 0 indra/newview/skins/default/html/pl/loading/loading.html | 0 .../newview/skins/default/html/pt/loading-error/index.html | 0 indra/newview/skins/default/html/pt/loading/loading.html | 0 indra/newview/skins/default/html/ru/loading/loading.html | 0 indra/newview/skins/default/html/tr/loading/loading.html | 0 indra/newview/skins/default/html/uk/loading/loading.html | 0 indra/newview/skins/default/html/unabletoconnect.png | Bin .../newview/skins/default/html/zh/loading-error/index.html | 0 indra/newview/skins/default/html/zh/loading/loading.html | 0 indra/newview/skins/default/textures/Blank.png | Bin indra/newview/skins/default/textures/Rounded_Rect.png | Bin indra/newview/skins/default/textures/alpha_gradient.tga | Bin indra/newview/skins/default/textures/alpha_gradient_2d.j2c | Bin indra/newview/skins/default/textures/arrow_down.tga | Bin indra/newview/skins/default/textures/arrow_up.tga | Bin .../newview/skins/default/textures/avatar_thumb_bkgrnd.png | Bin indra/newview/skins/default/textures/badge_note.j2c | Bin indra/newview/skins/default/textures/badge_ok.j2c | Bin indra/newview/skins/default/textures/badge_warn.j2c | Bin .../skins/default/textures/bottomtray/Cam_Avatar_Off.png | Bin .../skins/default/textures/bottomtray/Cam_FreeCam_Off.png | Bin .../skins/default/textures/bottomtray/Cam_Orbit_Off.png | Bin .../skins/default/textures/bottomtray/Cam_Pan_Off.png | Bin .../default/textures/bottomtray/Cam_Preset_Back_Off.png | Bin .../default/textures/bottomtray/Cam_Preset_Back_On.png | Bin .../default/textures/bottomtray/Cam_Preset_Eye_Off.png | Bin .../default/textures/bottomtray/Cam_Preset_Front_Off.png | Bin .../default/textures/bottomtray/Cam_Preset_Front_On.png | Bin .../default/textures/bottomtray/Cam_Preset_Side_Off.png | Bin .../default/textures/bottomtray/Cam_Preset_Side_On.png | Bin .../skins/default/textures/bottomtray/Cam_Rotate_In.png | Bin .../skins/default/textures/bottomtray/Cam_Rotate_Out.png | Bin .../skins/default/textures/bottomtray/Cam_Tracking_In.png | Bin .../skins/default/textures/bottomtray/Cam_Tracking_Out.png | Bin .../skins/default/textures/bottomtray/ChatBarHandle.png | Bin .../newview/skins/default/textures/bottomtray/DownArrow.png | Bin .../default/textures/bottomtray/Mouselook_View_Off.png | Bin .../skins/default/textures/bottomtray/Mouselook_View_On.png | Bin .../skins/default/textures/bottomtray/Move_Fly_Off.png | Bin .../skins/default/textures/bottomtray/Move_Run_Off.png | Bin .../skins/default/textures/bottomtray/Move_Walk_Off.png | Bin .../default/textures/bottomtray/Movement_Backward_Off.png | Bin .../default/textures/bottomtray/Movement_Backward_On.png | Bin .../skins/default/textures/bottomtray/Movement_Down_Off.png | Bin .../skins/default/textures/bottomtray/Movement_Down_On.png | Bin .../default/textures/bottomtray/Movement_Forward_Off.png | Bin .../default/textures/bottomtray/Movement_Forward_On.png | Bin .../skins/default/textures/bottomtray/Movement_Left_Off.png | Bin .../skins/default/textures/bottomtray/Movement_Left_On.png | Bin .../default/textures/bottomtray/Movement_Right_Off.png | Bin .../skins/default/textures/bottomtray/Movement_Right_On.png | Bin .../default/textures/bottomtray/Movement_TurnLeft_Off.png | Bin .../default/textures/bottomtray/Movement_TurnLeft_On.png | Bin .../default/textures/bottomtray/Movement_TurnRight_Off.png | Bin .../default/textures/bottomtray/Movement_TurnRight_On.png | Bin .../skins/default/textures/bottomtray/Movement_Up_Off.png | Bin .../skins/default/textures/bottomtray/Movement_Up_On.png | Bin .../skins/default/textures/bottomtray/Notices_Unread.png | Bin .../skins/default/textures/bottomtray/Object_View_Off.png | Bin .../skins/default/textures/bottomtray/Object_View_On.png | Bin .../skins/default/textures/bottomtray/PanOrbit_Off.png | Bin .../skins/default/textures/bottomtray/Snapshot_Off.png | Bin .../skins/default/textures/bottomtray/Unread_Chiclet.png | Bin .../skins/default/textures/bottomtray/VoicePTT_Lvl1.png | Bin .../skins/default/textures/bottomtray/VoicePTT_Lvl2.png | Bin .../skins/default/textures/bottomtray/VoicePTT_Lvl3.png | Bin .../skins/default/textures/bottomtray/VoicePTT_Off.png | Bin .../skins/default/textures/bottomtray/VoicePTT_On.png | Bin .../skins/default/textures/bottomtray/WellButton_Lit.png | Bin .../default/textures/bottomtray/WellButton_Lit_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Cone.png | Bin .../skins/default/textures/build/Object_Cone_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Cube.png | Bin .../skins/default/textures/build/Object_Cube_Selected.png | Bin .../skins/default/textures/build/Object_Cylinder.png | Bin .../default/textures/build/Object_Cylinder_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Grass.png | Bin .../skins/default/textures/build/Object_Grass_Selected.png | Bin .../skins/default/textures/build/Object_Hemi_Cone.png | Bin .../default/textures/build/Object_Hemi_Cone_Selected.png | Bin .../skins/default/textures/build/Object_Hemi_Cylinder.png | Bin .../textures/build/Object_Hemi_Cylinder_Selected.png | Bin .../skins/default/textures/build/Object_Hemi_Sphere.png | Bin .../default/textures/build/Object_Hemi_Sphere_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Prism.png | Bin .../skins/default/textures/build/Object_Prism_Selected.png | Bin .../newview/skins/default/textures/build/Object_Pyramid.png | Bin .../default/textures/build/Object_Pyramid_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Ring.png | Bin .../skins/default/textures/build/Object_Ring_Selected.png | Bin .../newview/skins/default/textures/build/Object_Sphere.png | Bin .../skins/default/textures/build/Object_Sphere_Selected.png | Bin .../skins/default/textures/build/Object_Tetrahedron.png | Bin .../default/textures/build/Object_Tetrahedron_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Torus.png | Bin .../skins/default/textures/build/Object_Torus_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Tree.png | Bin .../skins/default/textures/build/Object_Tree_Selected.png | Bin indra/newview/skins/default/textures/build/Object_Tube.png | Bin .../skins/default/textures/build/Object_Tube_Selected.png | Bin indra/newview/skins/default/textures/build/Tool_Create.png | Bin indra/newview/skins/default/textures/build/Tool_Dozer.png | Bin indra/newview/skins/default/textures/build/Tool_Face.png | Bin indra/newview/skins/default/textures/build/Tool_Grab.png | Bin indra/newview/skins/default/textures/build/Tool_Zoom.png | Bin indra/newview/skins/default/textures/button_anim_pause.tga | Bin .../skins/default/textures/button_anim_pause_selected.tga | Bin indra/newview/skins/default/textures/button_anim_play.tga | Bin .../skins/default/textures/button_anim_play_selected.tga | Bin indra/newview/skins/default/textures/checker.png | Bin indra/newview/skins/default/textures/cloud-particle.j2c | Bin indra/newview/skins/default/textures/color_swatch_alpha.tga | Bin .../textures/containers/Accordion_ArrowClosed_Off.png | Bin .../textures/containers/Accordion_ArrowClosed_Press.png | Bin .../textures/containers/Accordion_ArrowOpened_Off.png | Bin .../textures/containers/Accordion_ArrowOpened_Press.png | Bin .../skins/default/textures/containers/Accordion_Off.png | Bin .../skins/default/textures/containers/Accordion_Over.png | Bin .../skins/default/textures/containers/Accordion_Press.png | Bin .../default/textures/containers/Accordion_Selected.png | Bin .../newview/skins/default/textures/containers/Container.png | Bin .../skins/default/textures/containers/TabTop_Left_Off.png | Bin .../default/textures/containers/TabTop_Left_Selected.png | Bin .../skins/default/textures/containers/TabTop_Middle_Off.png | Bin .../default/textures/containers/TabTop_Middle_Selected.png | Bin .../skins/default/textures/containers/TabTop_Right_Off.png | Bin .../default/textures/containers/TabTop_Right_Selected.png | Bin .../default/textures/containers/Toolbar_Left_Flash.png | Bin .../skins/default/textures/containers/Toolbar_Left_Off.png | Bin .../skins/default/textures/containers/Toolbar_Left_Over.png | Bin .../default/textures/containers/Toolbar_Left_Selected.png | Bin .../default/textures/containers/Toolbar_Middle_Flash.png | Bin .../default/textures/containers/Toolbar_Middle_Off.png | Bin .../default/textures/containers/Toolbar_Middle_Over.png | Bin .../default/textures/containers/Toolbar_Middle_Selected.png | Bin .../default/textures/containers/Toolbar_Right_Flash.png | Bin .../skins/default/textures/containers/Toolbar_Right_Off.png | Bin .../default/textures/containers/Toolbar_Right_Over.png | Bin .../default/textures/containers/Toolbar_Right_Selected.png | Bin indra/newview/skins/default/textures/crosshairs.tga | Bin .../newview/skins/default/textures/default_land_picture.j2c | Bin .../skins/default/textures/default_profile_picture.j2c | Bin indra/newview/skins/default/textures/direction_arrow.tga | Bin indra/newview/skins/default/textures/down_arrow.png | Bin indra/newview/skins/default/textures/eye_button_active.tga | Bin .../newview/skins/default/textures/eye_button_inactive.tga | Bin indra/newview/skins/default/textures/folder_arrow.tga | Bin indra/newview/skins/default/textures/foot_shadow.j2c | Bin indra/newview/skins/default/textures/green_checkmark.png | Bin indra/newview/skins/default/textures/icn_media_movie.tga | Bin indra/newview/skins/default/textures/icn_media_web.tga | Bin .../newview/skins/default/textures/icon_avatar_offline.tga | Bin indra/newview/skins/default/textures/icon_avatar_online.tga | Bin indra/newview/skins/default/textures/icon_diurnal.tga | Bin .../newview/skins/default/textures/icon_for_sale_adult.tga | Bin indra/newview/skins/default/textures/icon_top_pick.tga | Bin .../skins/default/textures/icons/AddItem_Disabled.png | Bin indra/newview/skins/default/textures/icons/AddItem_Off.png | Bin .../newview/skins/default/textures/icons/AddItem_Press.png | Bin .../newview/skins/default/textures/icons/AudioMute_Off.png | Bin .../newview/skins/default/textures/icons/AudioMute_Over.png | Bin indra/newview/skins/default/textures/icons/Audio_Off.png | Bin indra/newview/skins/default/textures/icons/Audio_Press.png | Bin .../newview/skins/default/textures/icons/BackArrow_Off.png | Bin .../newview/skins/default/textures/icons/Conv_log_inbox.png | Bin indra/newview/skins/default/textures/icons/Copy.png | Bin .../newview/skins/default/textures/icons/DownArrow_Off.png | Bin indra/newview/skins/default/textures/icons/Edit_Wrench.png | Bin .../skins/default/textures/icons/ExternalBrowser_Off.png | Bin indra/newview/skins/default/textures/icons/Female.png | Bin .../newview/skins/default/textures/icons/ForSale_Badge.png | Bin .../skins/default/textures/icons/ForwardArrow_Off.png | Bin .../skins/default/textures/icons/ForwardArrow_Press.png | Bin .../newview/skins/default/textures/icons/Generic_Group.png | Bin .../skins/default/textures/icons/Generic_Group_Large.png | Bin .../skins/default/textures/icons/Generic_Object_Small.png | Bin .../newview/skins/default/textures/icons/Generic_Person.png | Bin .../skins/default/textures/icons/Generic_Person_Large.png | Bin .../default/textures/icons/Hierarchy_View_Disabled.png | Bin .../skins/default/textures/icons/Hierarchy_View_On.png | Bin .../newview/skins/default/textures/icons/Icon_For_Sale.png | Bin indra/newview/skins/default/textures/icons/Info.png | Bin indra/newview/skins/default/textures/icons/Info_Over.png | Bin indra/newview/skins/default/textures/icons/Info_Small.png | Bin indra/newview/skins/default/textures/icons/Inv_Alpha.png | Bin .../newview/skins/default/textures/icons/Inv_Animation.png | Bin .../newview/skins/default/textures/icons/Inv_BodyShape.png | Bin .../skins/default/textures/icons/Inv_CallingCard.png | Bin indra/newview/skins/default/textures/icons/Inv_Clothing.png | Bin indra/newview/skins/default/textures/icons/Inv_Eye.png | Bin .../skins/default/textures/icons/Inv_FolderClosed.png | Bin .../newview/skins/default/textures/icons/Inv_FolderOpen.png | Bin indra/newview/skins/default/textures/icons/Inv_Gesture.png | Bin indra/newview/skins/default/textures/icons/Inv_Gloves.png | Bin indra/newview/skins/default/textures/icons/Inv_Hair.png | Bin indra/newview/skins/default/textures/icons/Inv_Invalid.png | Bin indra/newview/skins/default/textures/icons/Inv_Jacket.png | Bin indra/newview/skins/default/textures/icons/Inv_Landmark.png | Bin indra/newview/skins/default/textures/icons/Inv_Link.png | Bin .../newview/skins/default/textures/icons/Inv_LinkFolder.png | Bin indra/newview/skins/default/textures/icons/Inv_LinkItem.png | Bin .../skins/default/textures/icons/Inv_LookFolderClosed.png | Bin .../skins/default/textures/icons/Inv_LookFolderOpen.png | Bin .../newview/skins/default/textures/icons/Inv_LostClosed.png | Bin indra/newview/skins/default/textures/icons/Inv_LostOpen.png | Bin indra/newview/skins/default/textures/icons/Inv_Mesh.png | Bin indra/newview/skins/default/textures/icons/Inv_Notecard.png | Bin indra/newview/skins/default/textures/icons/Inv_Object.png | Bin .../skins/default/textures/icons/Inv_Object_Multi.png | Bin indra/newview/skins/default/textures/icons/Inv_Pants.png | Bin indra/newview/skins/default/textures/icons/Inv_Physics.png | Bin indra/newview/skins/default/textures/icons/Inv_Script.png | Bin indra/newview/skins/default/textures/icons/Inv_Shirt.png | Bin indra/newview/skins/default/textures/icons/Inv_Shoe.png | Bin indra/newview/skins/default/textures/icons/Inv_Skin.png | Bin indra/newview/skins/default/textures/icons/Inv_Skirt.png | Bin indra/newview/skins/default/textures/icons/Inv_Snapshot.png | Bin indra/newview/skins/default/textures/icons/Inv_Socks.png | Bin indra/newview/skins/default/textures/icons/Inv_Sound.png | Bin .../newview/skins/default/textures/icons/Inv_SysClosed.png | Bin indra/newview/skins/default/textures/icons/Inv_SysOpen.png | Bin indra/newview/skins/default/textures/icons/Inv_Tattoo.png | Bin indra/newview/skins/default/textures/icons/Inv_Texture.png | Bin .../skins/default/textures/icons/Inv_TrashClosed.png | Bin .../newview/skins/default/textures/icons/Inv_TrashOpen.png | Bin .../newview/skins/default/textures/icons/Inv_Underpants.png | Bin .../newview/skins/default/textures/icons/Inv_Undershirt.png | Bin .../skins/default/textures/icons/List_View_Disabled.png | Bin indra/newview/skins/default/textures/icons/List_View_On.png | Bin indra/newview/skins/default/textures/icons/Lock.png | Bin indra/newview/skins/default/textures/icons/Locked_Icon.png | Bin indra/newview/skins/default/textures/icons/Male.png | Bin .../newview/skins/default/textures/icons/Microphone_On.png | Bin .../skins/default/textures/icons/MinusItem_Disabled.png | Bin .../newview/skins/default/textures/icons/MinusItem_Off.png | Bin .../skins/default/textures/icons/MinusItem_Press.png | Bin .../skins/default/textures/icons/OptionsMenu_Disabled.png | Bin .../skins/default/textures/icons/OptionsMenu_Off.png | Bin .../skins/default/textures/icons/OptionsMenu_Press.png | Bin .../skins/default/textures/icons/OutboxPush_Disabled.png | Bin .../newview/skins/default/textures/icons/OutboxPush_Off.png | Bin .../newview/skins/default/textures/icons/OutboxPush_On.png | Bin .../skins/default/textures/icons/OutboxPush_On_Over.png | Bin .../skins/default/textures/icons/OutboxPush_Over.png | Bin .../skins/default/textures/icons/OutboxPush_Press.png | Bin .../skins/default/textures/icons/OutboxPush_Progress_1.png | Bin .../skins/default/textures/icons/OutboxPush_Progress_2.png | Bin .../skins/default/textures/icons/OutboxPush_Progress_3.png | Bin .../skins/default/textures/icons/OutboxPush_Progress_4.png | Bin .../skins/default/textures/icons/OutboxPush_Progress_5.png | Bin .../skins/default/textures/icons/OutboxPush_Progress_6.png | Bin .../skins/default/textures/icons/OutboxPush_Selected.png | Bin .../default/textures/icons/OutboxPush_Selected_Disabled.png | Bin .../default/textures/icons/OutboxPush_Selected_Over.png | Bin .../default/textures/icons/OutboxPush_Selected_Press.png | Bin .../skins/default/textures/icons/Parcel_BuildNo_Dark.png | Bin .../skins/default/textures/icons/Parcel_BuildNo_Light.png | Bin .../skins/default/textures/icons/Parcel_Build_Dark.png | Bin .../skins/default/textures/icons/Parcel_DamageNo_Dark.png | Bin .../skins/default/textures/icons/Parcel_Damage_Dark.png | Bin .../skins/default/textures/icons/Parcel_Exp_Color.png | Bin .../skins/default/textures/icons/Parcel_FlyNo_Dark.png | Bin .../skins/default/textures/icons/Parcel_FlyNo_Light.png | Bin .../skins/default/textures/icons/Parcel_Fly_Dark.png | Bin .../skins/default/textures/icons/Parcel_ForSale_Light.png | Bin .../skins/default/textures/icons/Parcel_Health_Dark.png | Bin .../newview/skins/default/textures/icons/Parcel_M_Dark.png | Bin .../newview/skins/default/textures/icons/Parcel_M_Light.png | Bin .../newview/skins/default/textures/icons/Parcel_PG_Dark.png | Bin .../skins/default/textures/icons/Parcel_PG_Light.png | Bin .../skins/default/textures/icons/Parcel_PushNo_Dark.png | Bin .../skins/default/textures/icons/Parcel_PushNo_Light.png | Bin .../skins/default/textures/icons/Parcel_Push_Dark.png | Bin .../newview/skins/default/textures/icons/Parcel_R_Dark.png | Bin .../newview/skins/default/textures/icons/Parcel_R_Light.png | Bin .../skins/default/textures/icons/Parcel_ScriptsNo_Dark.png | Bin .../skins/default/textures/icons/Parcel_Scripts_Dark.png | Bin .../skins/default/textures/icons/Parcel_SeeAVsOff_Dark.png | Bin .../skins/default/textures/icons/Parcel_SeeAVsOff_Light.png | Bin .../skins/default/textures/icons/Parcel_SeeAVsOn_Dark.png | Bin .../skins/default/textures/icons/Parcel_SeeAVsOn_Light.png | Bin .../skins/default/textures/icons/Parcel_VoiceNo_Dark.png | Bin .../skins/default/textures/icons/Parcel_VoiceNo_Light.png | Bin .../skins/default/textures/icons/Parcel_Voice_Dark.png | Bin .../skins/default/textures/icons/Parcel_Voice_Light.png | Bin .../skins/default/textures/icons/Pathfinding_Dirty.png | Bin .../skins/default/textures/icons/Pathfinding_Disabled.png | Bin indra/newview/skins/default/textures/icons/Pause_Off.png | Bin indra/newview/skins/default/textures/icons/Pause_Over.png | Bin indra/newview/skins/default/textures/icons/Pause_Press.png | Bin indra/newview/skins/default/textures/icons/Person_Check.png | Bin indra/newview/skins/default/textures/icons/Person_Star.png | Bin indra/newview/skins/default/textures/icons/Play_Off.png | Bin indra/newview/skins/default/textures/icons/Play_Over.png | Bin indra/newview/skins/default/textures/icons/Play_Press.png | Bin indra/newview/skins/default/textures/icons/Progress_1.png | Bin indra/newview/skins/default/textures/icons/Progress_10.png | Bin indra/newview/skins/default/textures/icons/Progress_11.png | Bin indra/newview/skins/default/textures/icons/Progress_12.png | Bin indra/newview/skins/default/textures/icons/Progress_2.png | Bin indra/newview/skins/default/textures/icons/Progress_3.png | Bin indra/newview/skins/default/textures/icons/Progress_4.png | Bin indra/newview/skins/default/textures/icons/Progress_5.png | Bin indra/newview/skins/default/textures/icons/Progress_6.png | Bin indra/newview/skins/default/textures/icons/Progress_7.png | Bin indra/newview/skins/default/textures/icons/Progress_8.png | Bin indra/newview/skins/default/textures/icons/Progress_9.png | Bin indra/newview/skins/default/textures/icons/Refresh_Off.png | Bin indra/newview/skins/default/textures/icons/SL_Logo.png | Bin indra/newview/skins/default/textures/icons/Search_Icon.png | Bin indra/newview/skins/default/textures/icons/Shirt_Large.png | Bin indra/newview/skins/default/textures/icons/Shop.png | Bin .../skins/default/textures/icons/SkipBackward_Off.png | Bin .../skins/default/textures/icons/SkipForward_Off.png | Bin .../newview/skins/default/textures/icons/StopReload_Off.png | Bin .../skins/default/textures/icons/StopReload_Over.png | Bin indra/newview/skins/default/textures/icons/Stop_Off.png | Bin .../newview/skins/default/textures/icons/Sync_Disabled.png | Bin indra/newview/skins/default/textures/icons/Sync_Enabled.png | Bin .../skins/default/textures/icons/Sync_Progress_1.png | Bin .../skins/default/textures/icons/Sync_Progress_2.png | Bin .../skins/default/textures/icons/Sync_Progress_3.png | Bin .../skins/default/textures/icons/Sync_Progress_4.png | Bin .../skins/default/textures/icons/Sync_Progress_5.png | Bin .../skins/default/textures/icons/Sync_Progress_6.png | Bin .../skins/default/textures/icons/TrashItem_Disabled.png | Bin .../newview/skins/default/textures/icons/TrashItem_Off.png | Bin .../skins/default/textures/icons/TrashItem_Press.png | Bin indra/newview/skins/default/textures/icons/UnZoom_Off.png | Bin indra/newview/skins/default/textures/icons/UpArrow_Off.png | Bin .../newview/skins/default/textures/icons/VoicePTT_Lvl1.png | Bin .../newview/skins/default/textures/icons/VoicePTT_Lvl2.png | Bin .../newview/skins/default/textures/icons/VoicePTT_Lvl3.png | Bin indra/newview/skins/default/textures/icons/VoicePTT_Off.png | Bin indra/newview/skins/default/textures/icons/VoicePTT_On.png | Bin .../skins/default/textures/icons/Web_Profile_Off.png | Bin .../skins/default/textures/icons/YouAreHere_Badge.png | Bin indra/newview/skins/default/textures/icons/Zoom_Off.png | Bin .../skins/default/textures/icons/avaline_default_icon.jpg | Bin .../newview/skins/default/textures/icons/back_arrow_off.png | Bin .../skins/default/textures/icons/back_arrow_over.png | Bin .../skins/default/textures/icons/back_arrow_press.png | Bin indra/newview/skins/default/textures/icons/check_mark.png | Bin .../skins/default/textures/icons/collapse_to_one_line.png | Bin indra/newview/skins/default/textures/icons/edit_mine.png | Bin indra/newview/skins/default/textures/icons/edit_theirs.png | Bin .../skins/default/textures/icons/expand_one_liner.png | Bin .../skins/default/textures/icons/nearby_chat_icon.png | Bin indra/newview/skins/default/textures/icons/object_icon.png | Bin .../newview/skins/default/textures/icons/pop_up_caution.png | Bin .../newview/skins/default/textures/icons/see_me_online.png | Bin indra/newview/skins/default/textures/icons/see_on_map.png | Bin indra/newview/skins/default/textures/icons/unknown_icon.png | Bin indra/newview/skins/default/textures/jump_left_in.tga | Bin indra/newview/skins/default/textures/jump_left_out.tga | Bin indra/newview/skins/default/textures/jump_right_in.tga | Bin indra/newview/skins/default/textures/jump_right_out.tga | Bin .../newview/skins/default/textures/lag_status_critical.tga | Bin indra/newview/skins/default/textures/lag_status_good.tga | Bin indra/newview/skins/default/textures/lag_status_warning.tga | Bin indra/newview/skins/default/textures/legend.tga | Bin indra/newview/skins/default/textures/locked_image.j2c | Bin indra/newview/skins/default/textures/map_avatar_16.tga | Bin indra/newview/skins/default/textures/map_avatar_32.tga | Bin indra/newview/skins/default/textures/map_avatar_8.tga | Bin .../newview/skins/default/textures/map_avatar_above_32.tga | Bin .../newview/skins/default/textures/map_avatar_below_32.tga | Bin .../skins/default/textures/map_avatar_unknown_32.tga | Bin indra/newview/skins/default/textures/map_avatar_you_32.tga | Bin indra/newview/skins/default/textures/map_event.tga | Bin indra/newview/skins/default/textures/map_home.tga | Bin indra/newview/skins/default/textures/map_infohub.tga | Bin indra/newview/skins/default/textures/map_telehub.tga | Bin indra/newview/skins/default/textures/map_track_16.tga | Bin indra/newview/skins/default/textures/menu_separator.png | Bin indra/newview/skins/default/textures/missing_asset.tga | Bin .../skins/default/textures/model_wizard/progress_bar_bg.png | Bin .../skins/default/textures/model_wizard/progress_light.png | Bin .../skins/default/textures/navbar/Arrow_Left_Off.png | Bin .../skins/default/textures/navbar/Arrow_Right_Off.png | Bin .../newview/skins/default/textures/navbar/BuyArrow_Over.png | Bin .../skins/default/textures/navbar/BuyArrow_Press.png | Bin .../skins/default/textures/navbar/Favorite_Link_Over.png | Bin .../skins/default/textures/navbar/Favorite_Star_Active.png | Bin .../skins/default/textures/navbar/Favorite_Star_Off.png | Bin .../skins/default/textures/navbar/Favorite_Star_Over.png | Bin .../skins/default/textures/navbar/Favorite_Star_Press.png | Bin .../skins/default/textures/navbar/FileMenu_Divider.png | Bin indra/newview/skins/default/textures/navbar/Flag.png | Bin indra/newview/skins/default/textures/navbar/Help_Press.png | Bin indra/newview/skins/default/textures/navbar/Home_Off.png | Bin indra/newview/skins/default/textures/navbar/Info_Off.png | Bin indra/newview/skins/default/textures/navbar/Info_Over.png | Bin indra/newview/skins/default/textures/navbar/Info_Press.png | Bin indra/newview/skins/default/textures/navbar/Lock.png | Bin indra/newview/skins/default/textures/navbar/NavBar_BG.png | Bin .../skins/default/textures/navbar/NavBar_BG_NoFav_Bevel.png | Bin .../skins/default/textures/navbar/NavBar_BG_NoNav_Bevel.png | Bin .../newview/skins/default/textures/navbar/Row_Selection.png | Bin indra/newview/skins/default/textures/navbar/Search.png | Bin indra/newview/skins/default/textures/navbar/separator.png | Bin .../newview/skins/default/textures/notify_caution_icon.tga | Bin indra/newview/skins/default/textures/pixiesmall.j2c | Bin indra/newview/skins/default/textures/red_x.png | Bin indra/newview/skins/default/textures/rounded_square.j2c | Bin indra/newview/skins/default/textures/script_error.j2c | Bin indra/newview/skins/default/textures/silhouette.j2c | Bin .../newview/skins/default/textures/slim_icon_16_viewer.tga | Bin indra/newview/skins/default/textures/snapshot_download.png | Bin indra/newview/skins/default/textures/snapshot_email.png | Bin indra/newview/skins/default/textures/spacer24.tga | Bin indra/newview/skins/default/textures/tabarea.tga | Bin .../skins/default/textures/taskpanel/Activate_Checkmark.png | Bin .../textures/taskpanel/Sidebar_Icon_Dock_Foreground.png | Bin .../default/textures/taskpanel/Sidebar_Icon_Dock_Press.png | Bin .../textures/taskpanel/Sidebar_Icon_Undock_Foreground.png | Bin .../textures/taskpanel/Sidebar_Icon_Undock_Press.png | Bin .../skins/default/textures/taskpanel/TabIcon_Close_Off.png | Bin .../default/textures/taskpanel/TabIcon_Home_Selected.png | Bin .../skins/default/textures/taskpanel/TabIcon_Me_Off.png | Bin .../skins/default/textures/taskpanel/TabIcon_Open_Off.png | Bin .../skins/default/textures/taskpanel/TabIcon_People_Off.png | Bin .../skins/default/textures/taskpanel/TabIcon_Places_Off.png | Bin .../skins/default/textures/taskpanel/TabIcon_Things_Off.png | Bin .../skins/default/textures/taskpanel/TaskPanel_Tab_Off.png | Bin .../default/textures/taskpanel/TaskPanel_Tab_Selected.png | Bin indra/newview/skins/default/textures/tearoff_pressed.tga | Bin indra/newview/skins/default/textures/tearoffbox.tga | Bin indra/newview/skins/default/textures/textures.xml | 0 .../skins/default/textures/toolbar_icons/appearance.png | Bin .../skins/default/textures/toolbar_icons/avatars.png | Bin .../newview/skins/default/textures/toolbar_icons/build.png | Bin .../skins/default/textures/toolbar_icons/caret_bottom.png | Bin .../skins/default/textures/toolbar_icons/caret_left.png | Bin .../skins/default/textures/toolbar_icons/caret_right.png | Bin indra/newview/skins/default/textures/toolbar_icons/chat.png | Bin .../skins/default/textures/toolbar_icons/destinations.png | Bin .../skins/default/textures/toolbar_icons/gestures.png | Bin .../newview/skins/default/textures/toolbar_icons/howto.png | Bin .../skins/default/textures/toolbar_icons/inventory.png | Bin indra/newview/skins/default/textures/toolbar_icons/land.png | Bin indra/newview/skins/default/textures/toolbar_icons/map.png | Bin .../skins/default/textures/toolbar_icons/marketplace.png | Bin .../skins/default/textures/toolbar_icons/mini_cart.png | Bin .../skins/default/textures/toolbar_icons/mini_map.png | Bin indra/newview/skins/default/textures/toolbar_icons/move.png | Bin .../skins/default/textures/toolbar_icons/nearbyvoice.png | Bin .../newview/skins/default/textures/toolbar_icons/outbox.png | Bin .../newview/skins/default/textures/toolbar_icons/people.png | Bin .../newview/skins/default/textures/toolbar_icons/picks.png | Bin .../newview/skins/default/textures/toolbar_icons/places.png | Bin .../skins/default/textures/toolbar_icons/preferences.png | Bin .../skins/default/textures/toolbar_icons/profile.png | Bin .../newview/skins/default/textures/toolbar_icons/search.png | Bin .../skins/default/textures/toolbar_icons/snapshot.png | Bin .../newview/skins/default/textures/toolbar_icons/speak.png | Bin indra/newview/skins/default/textures/toolbar_icons/view.png | Bin indra/newview/skins/default/textures/transparent.j2c | Bin indra/newview/skins/default/textures/up_arrow.png | Bin indra/newview/skins/default/textures/uv_test1.j2c | Bin indra/newview/skins/default/textures/uv_test2.tga | Bin indra/newview/skins/default/textures/voice_meter_dot.j2c | Bin indra/newview/skins/default/textures/voice_meter_rings.j2c | Bin indra/newview/skins/default/textures/white.tga | Bin indra/newview/skins/default/textures/widgets/Arrow_Down.png | Bin indra/newview/skins/default/textures/widgets/Arrow_Left.png | Bin .../newview/skins/default/textures/widgets/Arrow_Right.png | Bin .../skins/default/textures/widgets/Arrow_Small_Left.png | Bin .../skins/default/textures/widgets/Arrow_Small_Right.png | Bin .../skins/default/textures/widgets/Arrow_Small_Up.png | Bin indra/newview/skins/default/textures/widgets/Arrow_Up.png | Bin .../skins/default/textures/widgets/Badge_Background.png | Bin .../newview/skins/default/textures/widgets/Badge_Border.png | Bin .../textures/widgets/BreadCrumbBtn_Left_Disabled.png | Bin .../default/textures/widgets/BreadCrumbBtn_Left_Off.png | Bin .../default/textures/widgets/BreadCrumbBtn_Left_Over.png | Bin .../default/textures/widgets/BreadCrumbBtn_Left_Press.png | Bin .../textures/widgets/BreadCrumbBtn_Middle_Disabled.png | Bin .../default/textures/widgets/BreadCrumbBtn_Middle_Off.png | Bin .../default/textures/widgets/BreadCrumbBtn_Middle_Over.png | Bin .../default/textures/widgets/BreadCrumbBtn_Middle_Press.png | Bin .../textures/widgets/BreadCrumbBtn_Right_Disabled.png | Bin .../default/textures/widgets/BreadCrumbBtn_Right_Off.png | Bin .../default/textures/widgets/BreadCrumbBtn_Right_Over.png | Bin .../default/textures/widgets/BreadCrumbBtn_Right_Press.png | Bin .../skins/default/textures/widgets/Checkbox_Disabled.png | Bin .../newview/skins/default/textures/widgets/Checkbox_Off.png | Bin .../newview/skins/default/textures/widgets/Checkbox_On.png | Bin .../skins/default/textures/widgets/Checkbox_On_Disabled.png | Bin .../skins/default/textures/widgets/Checkbox_On_Press.png | Bin .../skins/default/textures/widgets/Checkbox_Press.png | Bin .../skins/default/textures/widgets/ComboButton_Disabled.png | Bin .../skins/default/textures/widgets/ComboButton_Off.png | Bin .../skins/default/textures/widgets/ComboButton_On.png | Bin .../skins/default/textures/widgets/ComboButton_Selected.png | Bin .../skins/default/textures/widgets/ComboButton_UpOff.png | Bin .../default/textures/widgets/ComboButton_UpSelected.png | Bin .../default/textures/widgets/DisclosureArrow_Opened_Off.png | Bin .../skins/default/textures/widgets/DropDown_Disabled.png | Bin .../newview/skins/default/textures/widgets/DropDown_Off.png | Bin .../newview/skins/default/textures/widgets/DropDown_On.png | Bin .../skins/default/textures/widgets/DropDown_Press.png | Bin indra/newview/skins/default/textures/widgets/DropTarget.png | Bin .../skins/default/textures/widgets/Error_Tag_Background.png | Bin .../skins/default/textures/widgets/Linden_Dollar_Alert.png | Bin .../default/textures/widgets/Linden_Dollar_Background.png | Bin .../skins/default/textures/widgets/ListItem_Over.png | Bin .../skins/default/textures/widgets/ListItem_Select.png | Bin .../skins/default/textures/widgets/MarketplaceBtn_Off.png | Bin .../default/textures/widgets/MarketplaceBtn_Selected.png | Bin .../skins/default/textures/widgets/New_Tag_Background.png | Bin .../skins/default/textures/widgets/New_Tag_Border.png | Bin .../newview/skins/default/textures/widgets/ProgressBar.png | Bin .../skins/default/textures/widgets/ProgressTrack.png | Bin .../skins/default/textures/widgets/PushButton_Disabled.png | Bin .../skins/default/textures/widgets/PushButton_Off.png | Bin .../skins/default/textures/widgets/PushButton_On.png | Bin .../default/textures/widgets/PushButton_On_Selected.png | Bin .../skins/default/textures/widgets/PushButton_Over.png | Bin .../skins/default/textures/widgets/PushButton_Press.png | Bin .../skins/default/textures/widgets/PushButton_Selected.png | Bin .../textures/widgets/PushButton_Selected_Disabled.png | Bin .../default/textures/widgets/PushButton_Selected_Press.png | Bin .../skins/default/textures/widgets/RadioButton_Disabled.png | Bin .../skins/default/textures/widgets/RadioButton_Off.png | Bin .../skins/default/textures/widgets/RadioButton_On.png | Bin .../default/textures/widgets/RadioButton_On_Disabled.png | Bin .../skins/default/textures/widgets/RadioButton_On_Press.png | Bin .../skins/default/textures/widgets/RadioButton_Press.png | Bin .../skins/default/textures/widgets/ScrollArrow_Down.png | Bin .../default/textures/widgets/ScrollArrow_Down_Opaque.png | Bin .../textures/widgets/ScrollArrow_Down_Over_Opaque.png | Bin .../skins/default/textures/widgets/ScrollArrow_Left.png | Bin .../default/textures/widgets/ScrollArrow_Left_Opaque.png | Bin .../textures/widgets/ScrollArrow_Left_Over_Opaque.png | Bin .../skins/default/textures/widgets/ScrollArrow_Right.png | Bin .../default/textures/widgets/ScrollArrow_Right_Opaque.png | Bin .../textures/widgets/ScrollArrow_Right_Over_Opaque.png | Bin .../skins/default/textures/widgets/ScrollArrow_Up.png | Bin .../default/textures/widgets/ScrollArrow_Up_Opaque.png | Bin .../default/textures/widgets/ScrollArrow_Up_Over_Opaque.png | Bin .../skins/default/textures/widgets/ScrollThumb_Horiz.png | Bin .../skins/default/textures/widgets/ScrollThumb_Vert.png | Bin .../skins/default/textures/widgets/ScrollTrack_Horiz.png | Bin .../skins/default/textures/widgets/ScrollTrack_Vert.png | Bin .../default/textures/widgets/SegmentedBtn_Left_Disabled.png | Bin .../default/textures/widgets/SegmentedBtn_Left_Off.png | Bin .../default/textures/widgets/SegmentedBtn_Left_Over.png | Bin .../default/textures/widgets/SegmentedBtn_Left_Press.png | Bin .../default/textures/widgets/SegmentedBtn_Left_Selected.png | Bin .../widgets/SegmentedBtn_Left_Selected_Disabled.png | Bin .../textures/widgets/SegmentedBtn_Left_Selected_Over.png | Bin .../textures/widgets/SegmentedBtn_Left_Selected_Press.png | Bin .../textures/widgets/SegmentedBtn_Middle_Disabled.png | Bin .../textures/widgets/SegmentedBtn_Middle_Selected.png | Bin .../widgets/SegmentedBtn_Middle_Selected_Disabled.png | Bin .../textures/widgets/SegmentedBtn_Middle_Selected_Press.png | Bin .../textures/widgets/SegmentedBtn_Right_Disabled.png | Bin .../default/textures/widgets/SegmentedBtn_Right_Off.png | Bin .../textures/widgets/SegmentedBtn_Right_On_Selected.png | Bin .../default/textures/widgets/SegmentedBtn_Right_Over.png | Bin .../default/textures/widgets/SegmentedBtn_Right_Press.png | Bin .../textures/widgets/SegmentedBtn_Right_Selected.png | Bin .../widgets/SegmentedBtn_Right_Selected_Disabled.png | Bin .../textures/widgets/SegmentedBtn_Right_Selected_Press.png | Bin .../skins/default/textures/widgets/SliderThumb_Disabled.png | Bin .../skins/default/textures/widgets/SliderThumb_Off.png | Bin .../skins/default/textures/widgets/SliderThumb_Press.png | Bin .../skins/default/textures/widgets/SliderTrack_Horiz.png | Bin .../skins/default/textures/widgets/SliderTrack_Vert.png | Bin .../skins/default/textures/widgets/Stepper_Down_Off.png | Bin .../skins/default/textures/widgets/Stepper_Down_Press.png | Bin .../skins/default/textures/widgets/Stepper_Up_Off.png | Bin .../skins/default/textures/widgets/Stepper_Up_Press.png | Bin .../skins/default/textures/widgets/TextField_Active.png | Bin .../skins/default/textures/widgets/TextField_Disabled.png | Bin .../skins/default/textures/widgets/TextField_Off.png | Bin .../default/textures/widgets/TextField_Search_Active.png | Bin .../default/textures/widgets/TextField_Search_Disabled.png | Bin .../skins/default/textures/widgets/TextField_Search_Off.png | Bin indra/newview/skins/default/textures/widgets/Tooltip.png | Bin .../skins/default/textures/widgets/bevel_background.png | Bin indra/newview/skins/default/textures/widgets/buy_off.png | Bin indra/newview/skins/default/textures/widgets/buy_over.png | Bin indra/newview/skins/default/textures/widgets/buy_press.png | Bin .../newview/skins/default/textures/widgets/jump_left_in.png | Bin .../skins/default/textures/widgets/jump_left_out.png | Bin .../skins/default/textures/widgets/jump_right_in.png | Bin .../skins/default/textures/widgets/jump_right_out.png | Bin indra/newview/skins/default/textures/windows/Dragbar.png | Bin .../newview/skins/default/textures/windows/Flyout_Left.png | Bin .../skins/default/textures/windows/Flyout_Pointer.png | Bin .../newview/skins/default/textures/windows/Flyout_Right.png | Bin .../default/textures/windows/Icon_Close_Foreground.png | Bin .../skins/default/textures/windows/Icon_Close_Press.png | Bin .../skins/default/textures/windows/Icon_Close_Toast.png | Bin .../skins/default/textures/windows/Icon_Dock_Foreground.png | Bin .../skins/default/textures/windows/Icon_Dock_Press.png | Bin .../skins/default/textures/windows/Icon_Gear_Background.png | Bin .../skins/default/textures/windows/Icon_Gear_Foreground.png | Bin .../skins/default/textures/windows/Icon_Gear_Press.png | Bin .../skins/default/textures/windows/Icon_Help_Foreground.png | Bin .../skins/default/textures/windows/Icon_Help_Press.png | Bin .../default/textures/windows/Icon_Minimize_Foreground.png | Bin .../skins/default/textures/windows/Icon_Minimize_Press.png | Bin .../default/textures/windows/Icon_Restore_Foreground.png | Bin .../skins/default/textures/windows/Icon_Restore_Press.png | Bin .../default/textures/windows/Icon_Undock_Foreground.png | Bin .../skins/default/textures/windows/Inspector_Background.png | Bin .../skins/default/textures/windows/Inspector_Hover.png | Bin .../newview/skins/default/textures/windows/Inspector_I.png | Bin .../skins/default/textures/windows/Resize_Corner.png | Bin .../skins/default/textures/windows/Toast_Background.png | Bin .../skins/default/textures/windows/Toast_CloseBtn.png | Bin indra/newview/skins/default/textures/windows/Toast_Over.png | Bin .../skins/default/textures/windows/Volume_Background.png | Bin .../skins/default/textures/windows/Wearables_Divider.png | Bin .../skins/default/textures/windows/Window_Background.png | Bin .../skins/default/textures/windows/Window_Foreground.png | Bin .../default/textures/windows/Window_NoTitle_Background.png | Bin .../default/textures/windows/Window_NoTitle_Foreground.png | Bin .../skins/default/textures/windows/hint_arrow_down.png | Bin .../skins/default/textures/windows/hint_arrow_left.png | Bin .../default/textures/windows/hint_arrow_lower_left.png | Bin .../skins/default/textures/windows/hint_arrow_right.png | Bin .../skins/default/textures/windows/hint_arrow_up.png | Bin .../skins/default/textures/windows/hint_background.png | Bin .../newview/skins/default/textures/windows/startup_logo.png | Bin .../skins/default/textures/windows/yellow_gradient.png | Bin indra/newview/skins/default/textures/world/BeaconArrow.png | Bin .../newview/skins/default/textures/world/CameraDragDot.png | Bin indra/newview/skins/default/textures/world/NoEntryLines.png | Bin .../skins/default/textures/world/NoEntryPassLines.png | Bin indra/newview/skins/default/xui/da/floater_about.xml | 0 indra/newview/skins/default/xui/da/floater_about_land.xml | 0 indra/newview/skins/default/xui/da/floater_activeim.xml | 0 .../skins/default/xui/da/floater_animation_preview.xml | 0 indra/newview/skins/default/xui/da/floater_auction.xml | 0 .../newview/skins/default/xui/da/floater_avatar_picker.xml | 0 .../skins/default/xui/da/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/da/floater_beacons.xml | 0 .../newview/skins/default/xui/da/floater_build_options.xml | 0 indra/newview/skins/default/xui/da/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/da/floater_bumps.xml | 0 indra/newview/skins/default/xui/da/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/da/floater_buy_currency.xml | 0 .../skins/default/xui/da/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/da/floater_buy_land.xml | 0 indra/newview/skins/default/xui/da/floater_buy_object.xml | 0 indra/newview/skins/default/xui/da/floater_camera.xml | 0 indra/newview/skins/default/xui/da/floater_choose_group.xml | 0 indra/newview/skins/default/xui/da/floater_color_picker.xml | 0 indra/newview/skins/default/xui/da/floater_critical.xml | 0 indra/newview/skins/default/xui/da/floater_display_name.xml | 0 indra/newview/skins/default/xui/da/floater_event.xml | 0 indra/newview/skins/default/xui/da/floater_font_test.xml | 0 indra/newview/skins/default/xui/da/floater_gesture.xml | 0 indra/newview/skins/default/xui/da/floater_god_tools.xml | 0 .../skins/default/xui/da/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/da/floater_help_browser.xml | 0 indra/newview/skins/default/xui/da/floater_hud.xml | 0 indra/newview/skins/default/xui/da/floater_im_container.xml | 0 indra/newview/skins/default/xui/da/floater_im_session.xml | 0 .../newview/skins/default/xui/da/floater_image_preview.xml | 0 .../newview/skins/default/xui/da/floater_import_collada.xml | 0 .../newview/skins/default/xui/da/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/da/floater_inspect.xml | 0 indra/newview/skins/default/xui/da/floater_inventory.xml | 0 .../default/xui/da/floater_inventory_item_properties.xml | 0 .../skins/default/xui/da/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/da/floater_joystick.xml | 0 indra/newview/skins/default/xui/da/floater_lagmeter.xml | 0 .../newview/skins/default/xui/da/floater_land_holdings.xml | 0 .../newview/skins/default/xui/da/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/da/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/da/floater_map.xml | 0 .../newview/skins/default/xui/da/floater_media_browser.xml | 0 .../newview/skins/default/xui/da/floater_media_settings.xml | 0 indra/newview/skins/default/xui/da/floater_mem_leaking.xml | 0 .../newview/skins/default/xui/da/floater_model_preview.xml | 0 indra/newview/skins/default/xui/da/floater_moveview.xml | 0 indra/newview/skins/default/xui/da/floater_mute_object.xml | 0 indra/newview/skins/default/xui/da/floater_nearby_chat.xml | 0 indra/newview/skins/default/xui/da/floater_openobject.xml | 0 .../newview/skins/default/xui/da/floater_outgoing_call.xml | 0 indra/newview/skins/default/xui/da/floater_pay.xml | 0 indra/newview/skins/default/xui/da/floater_pay_object.xml | 0 indra/newview/skins/default/xui/da/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/da/floater_postcard.xml | 0 indra/newview/skins/default/xui/da/floater_preferences.xml | 0 .../skins/default/xui/da/floater_preview_animation.xml | 0 .../skins/default/xui/da/floater_preview_gesture.xml | 0 .../skins/default/xui/da/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/da/floater_preview_sound.xml | 0 .../skins/default/xui/da/floater_preview_texture.xml | 0 .../skins/default/xui/da/floater_price_for_listing.xml | 0 .../skins/default/xui/da/floater_publish_classified.xml | 0 .../skins/default/xui/da/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/da/floater_region_info.xml | 0 indra/newview/skins/default/xui/da/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/da/floater_script_debug.xml | 0 .../skins/default/xui/da/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/da/floater_script_limits.xml | 0 .../newview/skins/default/xui/da/floater_script_preview.xml | 0 indra/newview/skins/default/xui/da/floater_script_queue.xml | 0 .../newview/skins/default/xui/da/floater_script_search.xml | 0 indra/newview/skins/default/xui/da/floater_search.xml | 0 indra/newview/skins/default/xui/da/floater_select_key.xml | 0 indra/newview/skins/default/xui/da/floater_sell_land.xml | 0 .../newview/skins/default/xui/da/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/da/floater_snapshot.xml | 0 .../newview/skins/default/xui/da/floater_sound_devices.xml | 0 .../newview/skins/default/xui/da/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/da/floater_stats.xml | 0 indra/newview/skins/default/xui/da/floater_sys_well.xml | 0 indra/newview/skins/default/xui/da/floater_telehub.xml | 0 indra/newview/skins/default/xui/da/floater_texture_ctrl.xml | 0 indra/newview/skins/default/xui/da/floater_tools.xml | 0 indra/newview/skins/default/xui/da/floater_top_objects.xml | 0 indra/newview/skins/default/xui/da/floater_tos.xml | 0 indra/newview/skins/default/xui/da/floater_url_entry.xml | 0 .../newview/skins/default/xui/da/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/da/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/da/floater_web_content.xml | 0 .../skins/default/xui/da/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/da/floater_window_size.xml | 0 indra/newview/skins/default/xui/da/floater_world_map.xml | 0 indra/newview/skins/default/xui/da/inspect_avatar.xml | 0 indra/newview/skins/default/xui/da/inspect_group.xml | 0 indra/newview/skins/default/xui/da/inspect_object.xml | 0 .../newview/skins/default/xui/da/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/da/language_settings.xml | 0 .../newview/skins/default/xui/da/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/da/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/da/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/da/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/da/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/da/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/da/menu_bottomtray.xml | 0 indra/newview/skins/default/xui/da/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/da/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/da/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/da/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/da/menu_edit.xml | 0 indra/newview/skins/default/xui/da/menu_favorites.xml | 0 indra/newview/skins/default/xui/da/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/da/menu_group_plus.xml | 0 indra/newview/skins/default/xui/da/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/da/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/da/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/da/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/da/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/da/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/da/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/da/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/da/menu_inventory.xml | 0 indra/newview/skins/default/xui/da/menu_inventory_add.xml | 0 .../skins/default/xui/da/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/da/menu_land.xml | 0 indra/newview/skins/default/xui/da/menu_landmark.xml | 0 indra/newview/skins/default/xui/da/menu_login.xml | 0 indra/newview/skins/default/xui/da/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/da/menu_mini_map.xml | 0 .../skins/default/xui/da/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/da/menu_navbar.xml | 0 indra/newview/skins/default/xui/da/menu_nearby_chat.xml | 0 .../skins/default/xui/da/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/da/menu_object.xml | 0 indra/newview/skins/default/xui/da/menu_object_icon.xml | 0 indra/newview/skins/default/xui/da/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/da/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/da/menu_participant_list.xml | 0 .../skins/default/xui/da/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/da/menu_people_groups.xml | 0 .../skins/default/xui/da/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/da/menu_people_nearby.xml | 0 .../skins/default/xui/da/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/da/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/da/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/da/menu_picks.xml | 0 indra/newview/skins/default/xui/da/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/da/menu_place.xml | 0 .../newview/skins/default/xui/da/menu_place_add_button.xml | 0 .../skins/default/xui/da/menu_places_gear_folder.xml | 0 .../skins/default/xui/da/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/da/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/da/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/da/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/da/menu_slurl.xml | 0 .../skins/default/xui/da/menu_teleport_history_gear.xml | 0 .../skins/default/xui/da/menu_teleport_history_item.xml | 0 .../skins/default/xui/da/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/da/menu_text_editor.xml | 0 indra/newview/skins/default/xui/da/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/da/menu_url_agent.xml | 0 indra/newview/skins/default/xui/da/menu_url_group.xml | 0 indra/newview/skins/default/xui/da/menu_url_http.xml | 0 indra/newview/skins/default/xui/da/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/da/menu_url_map.xml | 0 indra/newview/skins/default/xui/da/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/da/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/da/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/da/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/da/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/da/menu_viewer.xml | 0 .../skins/default/xui/da/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/da/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/da/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/da/mime_types.xml | 0 indra/newview/skins/default/xui/da/mime_types_linux.xml | 0 indra/newview/skins/default/xui/da/mime_types_mac.xml | 0 indra/newview/skins/default/xui/da/notifications.xml | 0 indra/newview/skins/default/xui/da/outfit_accordion_tab.xml | 0 .../skins/default/xui/da/panel_active_object_row.xml | 0 .../skins/default/xui/da/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/da/panel_avatar_list_item.xml | 0 .../skins/default/xui/da/panel_block_list_sidetray.xml | 0 .../skins/default/xui/da/panel_body_parts_list_item.xml | 0 .../default/xui/da/panel_bodyparts_list_button_bar.xml | 0 indra/newview/skins/default/xui/da/panel_bottomtray.xml | 0 .../newview/skins/default/xui/da/panel_bottomtray_lite.xml | 0 .../newview/skins/default/xui/da/panel_classified_info.xml | 0 .../skins/default/xui/da/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/da/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/da/panel_cof_wearables.xml | 0 .../default/xui/da/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/da/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/da/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/da/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/da/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/da/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/da/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/da/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/da/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/da/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/da/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/da/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/da/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/da/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/da/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/da/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/da/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/da/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/da/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/da/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/da/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/da/panel_edit_wearable.xml | 0 .../skins/default/xui/da/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/da/panel_group_general.xml | 0 .../skins/default/xui/da/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/da/panel_group_invite.xml | 0 .../newview/skins/default/xui/da/panel_group_land_money.xml | 0 .../newview/skins/default/xui/da/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/da/panel_group_notices.xml | 0 indra/newview/skins/default/xui/da/panel_group_notify.xml | 0 indra/newview/skins/default/xui/da/panel_group_roles.xml | 0 .../newview/skins/default/xui/da/panel_im_control_panel.xml | 0 indra/newview/skins/default/xui/da/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/da/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/da/panel_landmarks.xml | 0 indra/newview/skins/default/xui/da/panel_login.xml | 0 indra/newview/skins/default/xui/da/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/da/panel_me.xml | 0 .../skins/default/xui/da/panel_media_settings_general.xml | 0 .../default/xui/da/panel_media_settings_permissions.xml | 0 .../skins/default/xui/da/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/da/panel_navigation_bar.xml | 0 .../newview/skins/default/xui/da/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/da/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/da/panel_notify_textbox.xml | 0 .../skins/default/xui/da/panel_online_status_toast.xml | 0 indra/newview/skins/default/xui/da/panel_outfit_edit.xml | 0 .../skins/default/xui/da/panel_outfits_inventory.xml | 0 .../default/xui/da/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/da/panel_outfits_list.xml | 0 .../newview/skins/default/xui/da/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/da/panel_people.xml | 0 indra/newview/skins/default/xui/da/panel_pick_info.xml | 0 indra/newview/skins/default/xui/da/panel_picks.xml | 0 indra/newview/skins/default/xui/da/panel_place_profile.xml | 0 indra/newview/skins/default/xui/da/panel_places.xml | 0 .../skins/default/xui/da/panel_preferences_advanced.xml | 0 .../skins/default/xui/da/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/da/panel_preferences_chat.xml | 0 .../skins/default/xui/da/panel_preferences_colors.xml | 0 .../skins/default/xui/da/panel_preferences_general.xml | 0 .../skins/default/xui/da/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/da/panel_preferences_move.xml | 0 .../skins/default/xui/da/panel_preferences_privacy.xml | 0 .../skins/default/xui/da/panel_preferences_setup.xml | 0 .../skins/default/xui/da/panel_preferences_sound.xml | 0 .../skins/default/xui/da/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/da/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/da/panel_region_debug.xml | 0 indra/newview/skins/default/xui/da/panel_region_estate.xml | 0 indra/newview/skins/default/xui/da/panel_region_general.xml | 0 indra/newview/skins/default/xui/da/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/da/panel_region_texture.xml | 0 indra/newview/skins/default/xui/da/panel_script_ed.xml | 0 .../skins/default/xui/da/panel_script_limits_my_avatar.xml | 0 .../default/xui/da/panel_script_limits_region_memory.xml | 0 .../newview/skins/default/xui/da/panel_scrolling_param.xml | 0 .../skins/default/xui/da/panel_scrolling_param_base.xml | 0 indra/newview/skins/default/xui/da/panel_side_tray.xml | 0 .../skins/default/xui/da/panel_side_tray_tab_caption.xml | 0 indra/newview/skins/default/xui/da/panel_sound_devices.xml | 0 .../skins/default/xui/da/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/da/panel_status_bar.xml | 0 .../newview/skins/default/xui/da/panel_teleport_history.xml | 0 .../skins/default/xui/da/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/da/panel_voice_effect.xml | 0 indra/newview/skins/default/xui/da/panel_world_map.xml | 0 indra/newview/skins/default/xui/da/role_actions.xml | 0 indra/newview/skins/default/xui/da/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/da/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/da/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/da/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/da/strings.xml | 0 indra/newview/skins/default/xui/da/teleport_strings.xml | 0 indra/newview/skins/default/xui/da/xui_version.xml | 0 indra/newview/skins/default/xui/de/floater_about.xml | 0 indra/newview/skins/default/xui/de/floater_about_land.xml | 0 indra/newview/skins/default/xui/de/floater_activeim.xml | 0 .../skins/default/xui/de/floater_animation_anim_preview.xml | 0 .../skins/default/xui/de/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/de/floater_auction.xml | 0 indra/newview/skins/default/xui/de/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/de/floater_avatar.xml | 0 .../newview/skins/default/xui/de/floater_avatar_picker.xml | 0 .../skins/default/xui/de/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/de/floater_beacons.xml | 0 .../newview/skins/default/xui/de/floater_build_options.xml | 0 indra/newview/skins/default/xui/de/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/de/floater_bumps.xml | 0 indra/newview/skins/default/xui/de/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/de/floater_buy_currency.xml | 0 .../skins/default/xui/de/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/de/floater_buy_land.xml | 0 indra/newview/skins/default/xui/de/floater_buy_object.xml | 0 indra/newview/skins/default/xui/de/floater_camera.xml | 0 indra/newview/skins/default/xui/de/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/de/floater_choose_group.xml | 0 indra/newview/skins/default/xui/de/floater_color_picker.xml | 0 indra/newview/skins/default/xui/de/floater_critical.xml | 0 .../skins/default/xui/de/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/de/floater_destinations.xml | 0 indra/newview/skins/default/xui/de/floater_display_name.xml | 0 .../newview/skins/default/xui/de/floater_edit_day_cycle.xml | 0 .../skins/default/xui/de/floater_edit_sky_preset.xml | 0 .../skins/default/xui/de/floater_edit_water_preset.xml | 0 .../skins/default/xui/de/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/de/floater_event.xml | 0 indra/newview/skins/default/xui/de/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/de/floater_font_test.xml | 0 indra/newview/skins/default/xui/de/floater_gesture.xml | 0 indra/newview/skins/default/xui/de/floater_god_tools.xml | 0 .../skins/default/xui/de/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/de/floater_help_browser.xml | 0 indra/newview/skins/default/xui/de/floater_how_to.xml | 0 indra/newview/skins/default/xui/de/floater_hud.xml | 0 indra/newview/skins/default/xui/de/floater_im_container.xml | 0 indra/newview/skins/default/xui/de/floater_im_session.xml | 0 .../newview/skins/default/xui/de/floater_image_preview.xml | 0 .../newview/skins/default/xui/de/floater_import_collada.xml | 0 .../newview/skins/default/xui/de/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/de/floater_inspect.xml | 0 .../default/xui/de/floater_inventory_item_properties.xml | 0 .../skins/default/xui/de/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/de/floater_joystick.xml | 0 indra/newview/skins/default/xui/de/floater_lagmeter.xml | 0 .../newview/skins/default/xui/de/floater_land_holdings.xml | 0 .../newview/skins/default/xui/de/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/de/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/de/floater_map.xml | 0 .../newview/skins/default/xui/de/floater_media_browser.xml | 0 .../newview/skins/default/xui/de/floater_media_settings.xml | 0 indra/newview/skins/default/xui/de/floater_mem_leaking.xml | 0 .../skins/default/xui/de/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/de/floater_model_preview.xml | 0 indra/newview/skins/default/xui/de/floater_moveview.xml | 0 indra/newview/skins/default/xui/de/floater_mute_object.xml | 0 .../newview/skins/default/xui/de/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/de/floater_my_inventory.xml | 0 indra/newview/skins/default/xui/de/floater_notification.xml | 0 .../skins/default/xui/de/floater_notifications_console.xml | 0 .../newview/skins/default/xui/de/floater_object_weights.xml | 0 indra/newview/skins/default/xui/de/floater_openobject.xml | 0 .../newview/skins/default/xui/de/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/de/floater_outgoing_call.xml | 0 .../skins/default/xui/de/floater_pathfinding_characters.xml | 0 .../skins/default/xui/de/floater_pathfinding_console.xml | 0 .../skins/default/xui/de/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/de/floater_pay.xml | 0 indra/newview/skins/default/xui/de/floater_pay_object.xml | 0 indra/newview/skins/default/xui/de/floater_people.xml | 0 indra/newview/skins/default/xui/de/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/de/floater_picks.xml | 0 indra/newview/skins/default/xui/de/floater_places.xml | 0 indra/newview/skins/default/xui/de/floater_post_process.xml | 0 indra/newview/skins/default/xui/de/floater_preferences.xml | 0 .../skins/default/xui/de/floater_preferences_proxy.xml | 0 .../skins/default/xui/de/floater_preview_animation.xml | 0 .../skins/default/xui/de/floater_preview_gesture.xml | 0 .../skins/default/xui/de/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/de/floater_preview_sound.xml | 0 .../skins/default/xui/de/floater_preview_texture.xml | 0 .../skins/default/xui/de/floater_price_for_listing.xml | 0 .../skins/default/xui/de/floater_publish_classified.xml | 0 .../skins/default/xui/de/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/de/floater_region_info.xml | 0 indra/newview/skins/default/xui/de/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/de/floater_script_debug.xml | 0 .../skins/default/xui/de/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/de/floater_script_limits.xml | 0 .../newview/skins/default/xui/de/floater_script_preview.xml | 0 indra/newview/skins/default/xui/de/floater_script_queue.xml | 0 .../newview/skins/default/xui/de/floater_script_search.xml | 0 indra/newview/skins/default/xui/de/floater_search.xml | 0 indra/newview/skins/default/xui/de/floater_select_key.xml | 0 indra/newview/skins/default/xui/de/floater_sell_land.xml | 0 .../newview/skins/default/xui/de/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/de/floater_snapshot.xml | 0 .../newview/skins/default/xui/de/floater_sound_devices.xml | 0 .../newview/skins/default/xui/de/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/de/floater_spellcheck.xml | 0 .../skins/default/xui/de/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/de/floater_stats.xml | 0 indra/newview/skins/default/xui/de/floater_sys_well.xml | 0 indra/newview/skins/default/xui/de/floater_telehub.xml | 0 .../skins/default/xui/de/floater_test_layout_stacks.xml | 0 .../default/xui/de/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/de/floater_texture_ctrl.xml | 0 .../skins/default/xui/de/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/de/floater_tools.xml | 0 indra/newview/skins/default/xui/de/floater_top_objects.xml | 0 indra/newview/skins/default/xui/de/floater_tos.xml | 0 indra/newview/skins/default/xui/de/floater_toybox.xml | 0 .../skins/default/xui/de/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/de/floater_url_entry.xml | 0 .../newview/skins/default/xui/de/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/de/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/de/floater_web_content.xml | 0 .../skins/default/xui/de/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/de/floater_window_size.xml | 0 indra/newview/skins/default/xui/de/floater_world_map.xml | 0 indra/newview/skins/default/xui/de/inspect_avatar.xml | 0 indra/newview/skins/default/xui/de/inspect_group.xml | 0 indra/newview/skins/default/xui/de/inspect_object.xml | 0 .../newview/skins/default/xui/de/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/de/language_settings.xml | 0 .../newview/skins/default/xui/de/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/de/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/de/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/de/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/de/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/de/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/de/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/de/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/de/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/de/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/de/menu_edit.xml | 0 indra/newview/skins/default/xui/de/menu_favorites.xml | 0 indra/newview/skins/default/xui/de/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/de/menu_group_plus.xml | 0 indra/newview/skins/default/xui/de/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/de/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/de/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/de/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/de/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/de/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/de/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/de/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/de/menu_inventory.xml | 0 indra/newview/skins/default/xui/de/menu_inventory_add.xml | 0 .../skins/default/xui/de/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/de/menu_land.xml | 0 indra/newview/skins/default/xui/de/menu_landmark.xml | 0 indra/newview/skins/default/xui/de/menu_login.xml | 0 indra/newview/skins/default/xui/de/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/de/menu_mini_map.xml | 0 .../skins/default/xui/de/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/de/menu_navbar.xml | 0 indra/newview/skins/default/xui/de/menu_nearby_chat.xml | 0 .../skins/default/xui/de/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/de/menu_object.xml | 0 indra/newview/skins/default/xui/de/menu_object_icon.xml | 0 indra/newview/skins/default/xui/de/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/de/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/de/menu_participant_list.xml | 0 .../skins/default/xui/de/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/de/menu_people_groups.xml | 0 .../skins/default/xui/de/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/de/menu_people_nearby.xml | 0 .../skins/default/xui/de/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/de/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/de/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/de/menu_picks.xml | 0 indra/newview/skins/default/xui/de/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/de/menu_place.xml | 0 .../newview/skins/default/xui/de/menu_place_add_button.xml | 0 .../skins/default/xui/de/menu_places_gear_folder.xml | 0 .../skins/default/xui/de/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/de/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/de/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/de/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/de/menu_slurl.xml | 0 .../skins/default/xui/de/menu_teleport_history_gear.xml | 0 .../skins/default/xui/de/menu_teleport_history_item.xml | 0 .../skins/default/xui/de/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/de/menu_text_editor.xml | 0 indra/newview/skins/default/xui/de/menu_toolbars.xml | 0 indra/newview/skins/default/xui/de/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/de/menu_url_agent.xml | 0 indra/newview/skins/default/xui/de/menu_url_group.xml | 0 indra/newview/skins/default/xui/de/menu_url_http.xml | 0 indra/newview/skins/default/xui/de/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/de/menu_url_map.xml | 0 indra/newview/skins/default/xui/de/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/de/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/de/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/de/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/de/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/de/menu_viewer.xml | 0 .../skins/default/xui/de/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/de/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/de/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/de/mime_types.xml | 0 indra/newview/skins/default/xui/de/mime_types_linux.xml | 0 indra/newview/skins/default/xui/de/mime_types_mac.xml | 0 indra/newview/skins/default/xui/de/notifications.xml | 0 indra/newview/skins/default/xui/de/outfit_accordion_tab.xml | 0 .../skins/default/xui/de/panel_active_object_row.xml | 0 .../skins/default/xui/de/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/de/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/de/panel_avatar_tag.xml | 0 .../skins/default/xui/de/panel_block_list_sidetray.xml | 0 .../skins/default/xui/de/panel_body_parts_list_item.xml | 0 .../default/xui/de/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/de/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/de/panel_chat_header.xml | 0 indra/newview/skins/default/xui/de/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/de/panel_classified_info.xml | 0 .../skins/default/xui/de/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/de/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/de/panel_cof_wearables.xml | 0 .../default/xui/de/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/de/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/de/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/de/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/de/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/de/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/de/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/de/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/de/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/de/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/de/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/de/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/de/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/de/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/de/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/de/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/de/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/de/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/de/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/de/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/de/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/de/panel_edit_wearable.xml | 0 .../skins/default/xui/de/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/de/panel_group_general.xml | 0 .../skins/default/xui/de/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/de/panel_group_invite.xml | 0 .../newview/skins/default/xui/de/panel_group_land_money.xml | 0 .../newview/skins/default/xui/de/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/de/panel_group_notices.xml | 0 indra/newview/skins/default/xui/de/panel_group_notify.xml | 0 indra/newview/skins/default/xui/de/panel_group_roles.xml | 0 .../newview/skins/default/xui/de/panel_im_control_panel.xml | 0 .../newview/skins/default/xui/de/panel_instant_message.xml | 0 indra/newview/skins/default/xui/de/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/de/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/de/panel_landmarks.xml | 0 indra/newview/skins/default/xui/de/panel_login.xml | 0 indra/newview/skins/default/xui/de/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/de/panel_me.xml | 0 .../skins/default/xui/de/panel_media_settings_general.xml | 0 .../default/xui/de/panel_media_settings_permissions.xml | 0 .../skins/default/xui/de/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/de/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/de/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/de/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/de/panel_nearby_media.xml | 0 .../skins/default/xui/de/panel_notifications_channel.xml | 0 indra/newview/skins/default/xui/de/panel_notify_textbox.xml | 0 .../skins/default/xui/de/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/de/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/de/panel_outfit_edit.xml | 0 .../skins/default/xui/de/panel_outfits_inventory.xml | 0 .../default/xui/de/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/de/panel_outfits_list.xml | 0 .../newview/skins/default/xui/de/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/de/panel_people.xml | 0 indra/newview/skins/default/xui/de/panel_pick_info.xml | 0 indra/newview/skins/default/xui/de/panel_picks.xml | 0 indra/newview/skins/default/xui/de/panel_place_profile.xml | 0 indra/newview/skins/default/xui/de/panel_places.xml | 0 .../newview/skins/default/xui/de/panel_postcard_message.xml | 0 .../skins/default/xui/de/panel_postcard_settings.xml | 0 .../skins/default/xui/de/panel_preferences_advanced.xml | 0 .../skins/default/xui/de/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/de/panel_preferences_chat.xml | 0 .../skins/default/xui/de/panel_preferences_colors.xml | 0 .../skins/default/xui/de/panel_preferences_general.xml | 0 .../skins/default/xui/de/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/de/panel_preferences_move.xml | 0 .../skins/default/xui/de/panel_preferences_privacy.xml | 0 .../skins/default/xui/de/panel_preferences_setup.xml | 0 .../skins/default/xui/de/panel_preferences_sound.xml | 0 .../skins/default/xui/de/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/de/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/de/panel_region_debug.xml | 0 .../skins/default/xui/de/panel_region_environment.xml | 0 indra/newview/skins/default/xui/de/panel_region_estate.xml | 0 indra/newview/skins/default/xui/de/panel_region_general.xml | 0 indra/newview/skins/default/xui/de/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/de/panel_script_ed.xml | 0 .../skins/default/xui/de/panel_script_limits_my_avatar.xml | 0 .../default/xui/de/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/de/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/de/panel_scrolling_param.xml | 0 .../skins/default/xui/de/panel_scrolling_param_base.xml | 0 .../skins/default/xui/de/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/de/panel_sidetray_home_tab.xml | 0 .../skins/default/xui/de/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/de/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/de/panel_snapshot_options.xml | 0 .../skins/default/xui/de/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/de/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/de/panel_sound_devices.xml | 0 .../skins/default/xui/de/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/de/panel_status_bar.xml | 0 indra/newview/skins/default/xui/de/panel_sys_well_item.xml | 0 .../newview/skins/default/xui/de/panel_teleport_history.xml | 0 .../skins/default/xui/de/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/de/panel_voice_effect.xml | 0 .../newview/skins/default/xui/de/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/de/panel_world_map.xml | 0 indra/newview/skins/default/xui/de/role_actions.xml | 0 indra/newview/skins/default/xui/de/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/de/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/de/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/de/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/de/strings.xml | 0 indra/newview/skins/default/xui/de/teleport_strings.xml | 0 indra/newview/skins/default/xui/de/xui_version.xml | 0 indra/newview/skins/default/xui/en/accordion_drag.xml | 0 indra/newview/skins/default/xui/en/accordion_parent.xml | 0 indra/newview/skins/default/xui/en/alert_button.xml | 0 indra/newview/skins/default/xui/en/alert_check_box.xml | 0 indra/newview/skins/default/xui/en/alert_icon.xml | 0 indra/newview/skins/default/xui/en/alert_line_editor.xml | 0 indra/newview/skins/default/xui/en/favorites_bar_button.xml | 0 indra/newview/skins/default/xui/en/floater_aaa.xml | 0 indra/newview/skins/default/xui/en/floater_about.xml | 0 indra/newview/skins/default/xui/en/floater_about_land.xml | 0 indra/newview/skins/default/xui/en/floater_activeim.xml | 0 .../skins/default/xui/en/floater_animation_anim_preview.xml | 0 .../skins/default/xui/en/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/en/floater_auction.xml | 0 indra/newview/skins/default/xui/en/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/en/floater_avatar.xml | 0 .../newview/skins/default/xui/en/floater_avatar_picker.xml | 0 .../skins/default/xui/en/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/en/floater_beacons.xml | 0 .../newview/skins/default/xui/en/floater_build_options.xml | 0 indra/newview/skins/default/xui/en/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/en/floater_bumps.xml | 0 indra/newview/skins/default/xui/en/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/en/floater_buy_currency.xml | 0 .../skins/default/xui/en/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/en/floater_buy_land.xml | 0 indra/newview/skins/default/xui/en/floater_buy_object.xml | 0 indra/newview/skins/default/xui/en/floater_camera.xml | 0 indra/newview/skins/default/xui/en/floater_choose_group.xml | 0 indra/newview/skins/default/xui/en/floater_color_picker.xml | 0 .../skins/default/xui/en/floater_conversation_log.xml | 0 .../skins/default/xui/en/floater_conversation_preview.xml | 0 indra/newview/skins/default/xui/en/floater_critical.xml | 0 .../skins/default/xui/en/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/en/floater_destinations.xml | 0 indra/newview/skins/default/xui/en/floater_display_name.xml | 0 .../newview/skins/default/xui/en/floater_edit_day_cycle.xml | 0 .../skins/default/xui/en/floater_edit_sky_preset.xml | 0 .../skins/default/xui/en/floater_edit_water_preset.xml | 0 .../skins/default/xui/en/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/en/floater_event.xml | 0 indra/newview/skins/default/xui/en/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/en/floater_font_test.xml | 0 indra/newview/skins/default/xui/en/floater_gesture.xml | 0 indra/newview/skins/default/xui/en/floater_god_tools.xml | 0 .../skins/default/xui/en/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/en/floater_help_browser.xml | 0 indra/newview/skins/default/xui/en/floater_how_to.xml | 0 indra/newview/skins/default/xui/en/floater_hud.xml | 0 indra/newview/skins/default/xui/en/floater_im_container.xml | 0 indra/newview/skins/default/xui/en/floater_im_session.xml | 0 .../newview/skins/default/xui/en/floater_image_preview.xml | 0 .../newview/skins/default/xui/en/floater_import_collada.xml | 0 .../newview/skins/default/xui/en/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/en/floater_inspect.xml | 0 .../default/xui/en/floater_inventory_item_properties.xml | 0 .../skins/default/xui/en/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/en/floater_joystick.xml | 0 indra/newview/skins/default/xui/en/floater_lagmeter.xml | 0 .../newview/skins/default/xui/en/floater_land_holdings.xml | 0 .../newview/skins/default/xui/en/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/en/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/en/floater_map.xml | 0 .../newview/skins/default/xui/en/floater_media_browser.xml | 0 .../newview/skins/default/xui/en/floater_media_settings.xml | 0 indra/newview/skins/default/xui/en/floater_mem_leaking.xml | 0 .../skins/default/xui/en/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/en/floater_model_preview.xml | 0 indra/newview/skins/default/xui/en/floater_moveview.xml | 0 indra/newview/skins/default/xui/en/floater_mute_object.xml | 0 .../newview/skins/default/xui/en/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/en/floater_my_inventory.xml | 0 .../newview/skins/default/xui/en/floater_my_web_profile.xml | 0 indra/newview/skins/default/xui/en/floater_notification.xml | 0 .../skins/default/xui/en/floater_notifications_console.xml | 0 .../newview/skins/default/xui/en/floater_object_weights.xml | 0 indra/newview/skins/default/xui/en/floater_openobject.xml | 0 .../newview/skins/default/xui/en/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/en/floater_outgoing_call.xml | 0 .../skins/default/xui/en/floater_pathfinding_characters.xml | 0 .../skins/default/xui/en/floater_pathfinding_console.xml | 0 .../skins/default/xui/en/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/en/floater_pay.xml | 0 indra/newview/skins/default/xui/en/floater_pay_object.xml | 0 indra/newview/skins/default/xui/en/floater_people.xml | 0 indra/newview/skins/default/xui/en/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/en/floater_picks.xml | 0 indra/newview/skins/default/xui/en/floater_places.xml | 0 indra/newview/skins/default/xui/en/floater_post_process.xml | 0 indra/newview/skins/default/xui/en/floater_preferences.xml | 0 .../skins/default/xui/en/floater_preferences_proxy.xml | 0 .../skins/default/xui/en/floater_preview_animation.xml | 0 .../skins/default/xui/en/floater_preview_gesture.xml | 0 .../skins/default/xui/en/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/en/floater_preview_sound.xml | 0 .../skins/default/xui/en/floater_preview_texture.xml | 0 .../skins/default/xui/en/floater_price_for_listing.xml | 0 .../skins/default/xui/en/floater_publish_classified.xml | 0 .../skins/default/xui/en/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/en/floater_region_info.xml | 0 indra/newview/skins/default/xui/en/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/en/floater_script.xml | 0 indra/newview/skins/default/xui/en/floater_script_debug.xml | 0 .../skins/default/xui/en/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/en/floater_script_limits.xml | 0 .../newview/skins/default/xui/en/floater_script_preview.xml | 0 indra/newview/skins/default/xui/en/floater_script_queue.xml | 0 .../newview/skins/default/xui/en/floater_script_search.xml | 0 indra/newview/skins/default/xui/en/floater_search.xml | 0 indra/newview/skins/default/xui/en/floater_select_key.xml | 0 indra/newview/skins/default/xui/en/floater_sell_land.xml | 0 .../newview/skins/default/xui/en/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/en/floater_side_bar_tab.xml | 0 indra/newview/skins/default/xui/en/floater_snapshot.xml | 0 .../newview/skins/default/xui/en/floater_sound_devices.xml | 0 .../newview/skins/default/xui/en/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/en/floater_spellcheck.xml | 0 .../skins/default/xui/en/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/en/floater_stats.xml | 0 indra/newview/skins/default/xui/en/floater_sys_well.xml | 0 indra/newview/skins/default/xui/en/floater_telehub.xml | 0 indra/newview/skins/default/xui/en/floater_test_button.xml | 0 .../newview/skins/default/xui/en/floater_test_checkbox.xml | 0 .../newview/skins/default/xui/en/floater_test_combobox.xml | 0 .../skins/default/xui/en/floater_test_inspectors.xml | 0 indra/newview/skins/default/xui/en/floater_test_layout.xml | 0 .../skins/default/xui/en/floater_test_layout_stacks.xml | 0 .../skins/default/xui/en/floater_test_line_editor.xml | 0 .../newview/skins/default/xui/en/floater_test_list_view.xml | 0 .../skins/default/xui/en/floater_test_navigation_bar.xml | 0 .../skins/default/xui/en/floater_test_radiogroup.xml | 0 indra/newview/skins/default/xui/en/floater_test_slider.xml | 0 indra/newview/skins/default/xui/en/floater_test_spinner.xml | 0 .../skins/default/xui/en/floater_test_text_editor.xml | 0 .../default/xui/en/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/en/floater_test_textbox.xml | 0 indra/newview/skins/default/xui/en/floater_test_toolbar.xml | 0 indra/newview/skins/default/xui/en/floater_test_widgets.xml | 0 indra/newview/skins/default/xui/en/floater_texture_ctrl.xml | 0 .../skins/default/xui/en/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/en/floater_tools.xml | 0 indra/newview/skins/default/xui/en/floater_top_objects.xml | 0 indra/newview/skins/default/xui/en/floater_tos.xml | 0 indra/newview/skins/default/xui/en/floater_toybox.xml | 0 .../skins/default/xui/en/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/en/floater_ui_preview.xml | 0 indra/newview/skins/default/xui/en/floater_url_entry.xml | 0 .../skins/default/xui/en/floater_voice_chat_volume.xml | 0 indra/newview/skins/default/xui/en/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/en/floater_voice_volume.xml | 0 indra/newview/skins/default/xui/en/floater_web_content.xml | 0 indra/newview/skins/default/xui/en/floater_web_profile.xml | 0 .../skins/default/xui/en/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/en/floater_window_size.xml | 0 indra/newview/skins/default/xui/en/floater_world_map.xml | 0 indra/newview/skins/default/xui/en/fonts.xml | 0 indra/newview/skins/default/xui/en/inspect_avatar.xml | 0 indra/newview/skins/default/xui/en/inspect_group.xml | 0 indra/newview/skins/default/xui/en/inspect_object.xml | 0 .../newview/skins/default/xui/en/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/en/inspect_toast.xml | 0 indra/newview/skins/default/xui/en/inspector_info_ctrl.xml | 0 indra/newview/skins/default/xui/en/language_settings.xml | 0 indra/newview/skins/default/xui/en/main_view.xml | 0 .../newview/skins/default/xui/en/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/en/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/en/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/en/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/en/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/en/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/en/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/en/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/en/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/en/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/en/menu_conversation.xml | 0 .../skins/default/xui/en/menu_conversation_log_gear.xml | 0 .../skins/default/xui/en/menu_conversation_log_view.xml | 0 indra/newview/skins/default/xui/en/menu_edit.xml | 0 indra/newview/skins/default/xui/en/menu_favorites.xml | 0 indra/newview/skins/default/xui/en/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/en/menu_group_plus.xml | 0 indra/newview/skins/default/xui/en/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/en/menu_im_conversation.xml | 0 .../skins/default/xui/en/menu_im_session_showmodes.xml | 0 indra/newview/skins/default/xui/en/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/en/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/en/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/en/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/en/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/en/menu_inventory.xml | 0 indra/newview/skins/default/xui/en/menu_inventory_add.xml | 0 .../skins/default/xui/en/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/en/menu_land.xml | 0 indra/newview/skins/default/xui/en/menu_landmark.xml | 0 indra/newview/skins/default/xui/en/menu_login.xml | 0 indra/newview/skins/default/xui/en/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/en/menu_mini_map.xml | 0 .../skins/default/xui/en/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/en/menu_navbar.xml | 0 indra/newview/skins/default/xui/en/menu_nearby_chat.xml | 0 .../skins/default/xui/en/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/en/menu_object.xml | 0 indra/newview/skins/default/xui/en/menu_object_icon.xml | 0 indra/newview/skins/default/xui/en/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/en/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/en/menu_participant_list.xml | 0 .../newview/skins/default/xui/en/menu_participant_view.xml | 0 .../skins/default/xui/en/menu_people_blocked_gear.xml | 0 .../skins/default/xui/en/menu_people_blocked_plus.xml | 0 .../skins/default/xui/en/menu_people_blocked_view.xml | 0 .../skins/default/xui/en/menu_people_friends_view.xml | 0 indra/newview/skins/default/xui/en/menu_people_groups.xml | 0 .../skins/default/xui/en/menu_people_groups_view.xml | 0 indra/newview/skins/default/xui/en/menu_people_nearby.xml | 0 .../skins/default/xui/en/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/en/menu_people_nearby_view.xml | 0 .../skins/default/xui/en/menu_people_recent_view.xml | 0 indra/newview/skins/default/xui/en/menu_picks.xml | 0 indra/newview/skins/default/xui/en/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/en/menu_place.xml | 0 .../newview/skins/default/xui/en/menu_place_add_button.xml | 0 .../skins/default/xui/en/menu_places_gear_folder.xml | 0 .../skins/default/xui/en/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/en/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/en/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/en/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/en/menu_slurl.xml | 0 .../skins/default/xui/en/menu_teleport_history_gear.xml | 0 .../skins/default/xui/en/menu_teleport_history_item.xml | 0 .../skins/default/xui/en/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/en/menu_text_editor.xml | 0 indra/newview/skins/default/xui/en/menu_toolbars.xml | 0 indra/newview/skins/default/xui/en/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/en/menu_url_agent.xml | 0 indra/newview/skins/default/xui/en/menu_url_group.xml | 0 indra/newview/skins/default/xui/en/menu_url_http.xml | 0 indra/newview/skins/default/xui/en/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/en/menu_url_map.xml | 0 indra/newview/skins/default/xui/en/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/en/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/en/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/en/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/en/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/en/menu_viewer.xml | 0 .../skins/default/xui/en/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/en/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/en/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/en/mime_types.xml | 0 indra/newview/skins/default/xui/en/mime_types_linux.xml | 0 indra/newview/skins/default/xui/en/mime_types_mac.xml | 0 .../skins/default/xui/en/notification_visibility.xml | 0 indra/newview/skins/default/xui/en/notifications.xml | 0 indra/newview/skins/default/xui/en/outfit_accordion_tab.xml | 0 .../skins/default/xui/en/panel_active_object_row.xml | 0 .../newview/skins/default/xui/en/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/en/panel_avatar_tag.xml | 0 .../skins/default/xui/en/panel_block_list_sidetray.xml | 0 .../skins/default/xui/en/panel_blocked_list_item.xml | 0 .../skins/default/xui/en/panel_body_parts_list_item.xml | 0 .../default/xui/en/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/en/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/en/panel_chat_header.xml | 0 indra/newview/skins/default/xui/en/panel_chat_item.xml | 0 indra/newview/skins/default/xui/en/panel_chat_separator.xml | 0 indra/newview/skins/default/xui/en/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/en/panel_classified_info.xml | 0 .../skins/default/xui/en/panel_classifieds_list_item.xml | 0 .../skins/default/xui/en/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/en/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/en/panel_cof_wearables.xml | 0 .../skins/default/xui/en/panel_conversation_list_item.xml | 0 .../default/xui/en/panel_conversation_log_list_item.xml | 0 .../default/xui/en/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/en/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/en/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/en/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/en/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/en/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/en/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/en/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/en/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/en/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/en/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/en/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/en/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/en/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/en/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/en/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/en/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/en/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/en/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/en/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/en/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/en/panel_edit_wearable.xml | 0 indra/newview/skins/default/xui/en/panel_generic_tip.xml | 0 indra/newview/skins/default/xui/en/panel_group_general.xml | 0 .../skins/default/xui/en/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/en/panel_group_invite.xml | 0 .../newview/skins/default/xui/en/panel_group_land_money.xml | 0 .../newview/skins/default/xui/en/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/en/panel_group_notices.xml | 0 indra/newview/skins/default/xui/en/panel_group_notify.xml | 0 indra/newview/skins/default/xui/en/panel_group_roles.xml | 0 indra/newview/skins/default/xui/en/panel_hint.xml | 0 indra/newview/skins/default/xui/en/panel_hint_image.xml | 0 indra/newview/skins/default/xui/en/panel_hud.xml | 0 .../newview/skins/default/xui/en/panel_inbox_inventory.xml | 0 .../newview/skins/default/xui/en/panel_instant_message.xml | 0 indra/newview/skins/default/xui/en/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/en/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/en/panel_landmarks.xml | 0 indra/newview/skins/default/xui/en/panel_login.xml | 0 indra/newview/skins/default/xui/en/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/en/panel_me.xml | 0 .../skins/default/xui/en/panel_media_settings_general.xml | 0 .../default/xui/en/panel_media_settings_permissions.xml | 0 .../skins/default/xui/en/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/en/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/en/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/en/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/en/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/en/panel_notification.xml | 0 .../skins/default/xui/en/panel_notifications_channel.xml | 0 indra/newview/skins/default/xui/en/panel_notify_textbox.xml | 0 .../skins/default/xui/en/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/en/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/en/panel_outfit_edit.xml | 0 .../skins/default/xui/en/panel_outfits_inventory.xml | 0 .../default/xui/en/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/en/panel_outfits_list.xml | 0 .../newview/skins/default/xui/en/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/en/panel_people.xml | 0 indra/newview/skins/default/xui/en/panel_pick_info.xml | 0 indra/newview/skins/default/xui/en/panel_pick_list_item.xml | 0 indra/newview/skins/default/xui/en/panel_picks.xml | 0 indra/newview/skins/default/xui/en/panel_place_profile.xml | 0 indra/newview/skins/default/xui/en/panel_places.xml | 0 .../newview/skins/default/xui/en/panel_postcard_message.xml | 0 .../skins/default/xui/en/panel_postcard_settings.xml | 0 .../skins/default/xui/en/panel_preferences_advanced.xml | 0 .../skins/default/xui/en/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/en/panel_preferences_chat.xml | 0 .../skins/default/xui/en/panel_preferences_colors.xml | 0 .../skins/default/xui/en/panel_preferences_general.xml | 0 .../skins/default/xui/en/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/en/panel_preferences_move.xml | 0 .../skins/default/xui/en/panel_preferences_privacy.xml | 0 .../skins/default/xui/en/panel_preferences_setup.xml | 0 .../skins/default/xui/en/panel_preferences_sound.xml | 0 .../skins/default/xui/en/panel_prim_media_controls.xml | 0 indra/newview/skins/default/xui/en/panel_progress.xml | 0 .../newview/skins/default/xui/en/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/en/panel_region_debug.xml | 0 .../skins/default/xui/en/panel_region_environment.xml | 0 indra/newview/skins/default/xui/en/panel_region_estate.xml | 0 indra/newview/skins/default/xui/en/panel_region_general.xml | 0 indra/newview/skins/default/xui/en/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/en/panel_script_ed.xml | 0 .../skins/default/xui/en/panel_script_limits_my_avatar.xml | 0 .../default/xui/en/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/en/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/en/panel_scrolling_param.xml | 0 .../skins/default/xui/en/panel_scrolling_param_base.xml | 0 .../skins/default/xui/en/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/en/panel_sidetray_home_tab.xml | 0 .../skins/default/xui/en/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/en/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/en/panel_snapshot_options.xml | 0 .../skins/default/xui/en/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/en/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/en/panel_sound_devices.xml | 0 .../skins/default/xui/en/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/en/panel_status_bar.xml | 0 indra/newview/skins/default/xui/en/panel_sys_well_item.xml | 0 .../newview/skins/default/xui/en/panel_teleport_history.xml | 0 .../skins/default/xui/en/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/en/panel_toast.xml | 0 indra/newview/skins/default/xui/en/panel_toolbar_view.xml | 0 indra/newview/skins/default/xui/en/panel_topinfo_bar.xml | 0 indra/newview/skins/default/xui/en/panel_voice_effect.xml | 0 .../newview/skins/default/xui/en/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/en/panel_world_map.xml | 0 indra/newview/skins/default/xui/en/role_actions.xml | 0 indra/newview/skins/default/xui/en/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/en/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/en/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/en/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/en/strings.xml | 0 indra/newview/skins/default/xui/en/teleport_strings.xml | 0 indra/newview/skins/default/xui/en/widgets/accordion.xml | 0 .../newview/skins/default/xui/en/widgets/accordion_tab.xml | 0 indra/newview/skins/default/xui/en/widgets/avatar_icon.xml | 0 .../skins/default/xui/en/widgets/avatar_list_item.xml | 0 indra/newview/skins/default/xui/en/widgets/badge.xml | 0 .../skins/default/xui/en/widgets/bodyparts_list_item.xml | 0 indra/newview/skins/default/xui/en/widgets/button.xml | 0 indra/newview/skins/default/xui/en/widgets/chat_editor.xml | 0 indra/newview/skins/default/xui/en/widgets/chat_history.xml | 0 indra/newview/skins/default/xui/en/widgets/check_box.xml | 0 .../newview/skins/default/xui/en/widgets/chiclet_offer.xml | 0 .../newview/skins/default/xui/en/widgets/chiclet_panel.xml | 0 .../newview/skins/default/xui/en/widgets/chiclet_script.xml | 0 .../skins/default/xui/en/widgets/clothing_list_item.xml | 0 indra/newview/skins/default/xui/en/widgets/color_swatch.xml | 0 indra/newview/skins/default/xui/en/widgets/combo_box.xml | 0 indra/newview/skins/default/xui/en/widgets/context_menu.xml | 0 .../default/xui/en/widgets/conversation_view_session.xml | 0 .../default/xui/en/widgets/deletable_wearable_list_item.xml | 0 indra/newview/skins/default/xui/en/widgets/drop_down.xml | 0 .../default/xui/en/widgets/dummy_clothing_list_item.xml | 0 .../skins/default/xui/en/widgets/expandable_text.xml | 0 .../newview/skins/default/xui/en/widgets/filter_editor.xml | 0 .../newview/skins/default/xui/en/widgets/flat_list_view.xml | 0 indra/newview/skins/default/xui/en/widgets/floater.xml | 0 .../newview/skins/default/xui/en/widgets/flyout_button.xml | 0 .../skins/default/xui/en/widgets/folder_view_item.xml | 0 .../skins/default/xui/en/widgets/gesture_combo_list.xml | 0 indra/newview/skins/default/xui/en/widgets/group_icon.xml | 0 indra/newview/skins/default/xui/en/widgets/hint_popup.xml | 0 indra/newview/skins/default/xui/en/widgets/icon.xml | 0 .../default/xui/en/widgets/inbox_folder_view_folder.xml | 0 .../skins/default/xui/en/widgets/inbox_folder_view_item.xml | 0 .../skins/default/xui/en/widgets/inbox_inventory_panel.xml | 0 indra/newview/skins/default/xui/en/widgets/inspector.xml | 0 .../skins/default/xui/en/widgets/inventory_list_item.xml | 0 .../skins/default/xui/en/widgets/inventory_panel.xml | 0 .../skins/default/xui/en/widgets/joystick_rotate.xml | 0 indra/newview/skins/default/xui/en/widgets/layout_stack.xml | 0 indra/newview/skins/default/xui/en/widgets/line_editor.xml | 0 indra/newview/skins/default/xui/en/widgets/list_view.xml | 0 .../skins/default/xui/en/widgets/loading_indicator.xml | 0 .../newview/skins/default/xui/en/widgets/location_input.xml | 0 indra/newview/skins/default/xui/en/widgets/menu.xml | 0 indra/newview/skins/default/xui/en/widgets/menu_bar.xml | 0 indra/newview/skins/default/xui/en/widgets/menu_item.xml | 0 .../newview/skins/default/xui/en/widgets/menu_item_call.xml | 0 .../skins/default/xui/en/widgets/menu_item_check.xml | 0 .../skins/default/xui/en/widgets/menu_item_separator.xml | 0 .../skins/default/xui/en/widgets/menu_item_tear_off.xml | 0 indra/newview/skins/default/xui/en/widgets/multi_slider.xml | 0 .../skins/default/xui/en/widgets/multi_slider_bar.xml | 0 indra/newview/skins/default/xui/en/widgets/name_editor.xml | 0 indra/newview/skins/default/xui/en/widgets/name_list.xml | 0 .../newview/skins/default/xui/en/widgets/output_monitor.xml | 0 indra/newview/skins/default/xui/en/widgets/panel.xml | 0 .../skins/default/xui/en/widgets/panel_camera_item.xml | 0 indra/newview/skins/default/xui/en/widgets/progress_bar.xml | 0 indra/newview/skins/default/xui/en/widgets/radio_group.xml | 0 indra/newview/skins/default/xui/en/widgets/radio_item.xml | 0 indra/newview/skins/default/xui/en/widgets/scroll_bar.xml | 0 .../skins/default/xui/en/widgets/scroll_column_header.xml | 0 .../skins/default/xui/en/widgets/scroll_container.xml | 0 indra/newview/skins/default/xui/en/widgets/scroll_list.xml | 0 .../skins/default/xui/en/widgets/scrolling_panel_list.xml | 0 .../skins/default/xui/en/widgets/search_combo_box.xml | 0 .../newview/skins/default/xui/en/widgets/search_editor.xml | 0 indra/newview/skins/default/xui/en/widgets/side_tray.xml | 0 indra/newview/skins/default/xui/en/widgets/sidetray_tab.xml | 0 .../skins/default/xui/en/widgets/simple_text_editor.xml | 0 indra/newview/skins/default/xui/en/widgets/slider.xml | 0 indra/newview/skins/default/xui/en/widgets/slider_bar.xml | 0 indra/newview/skins/default/xui/en/widgets/spinner.xml | 0 indra/newview/skins/default/xui/en/widgets/split_button.xml | 0 .../newview/skins/default/xui/en/widgets/tab_container.xml | 0 indra/newview/skins/default/xui/en/widgets/talk_button.xml | 0 .../default/xui/en/widgets/teleport_history_menu_item.xml | 0 indra/newview/skins/default/xui/en/widgets/text.xml | 0 indra/newview/skins/default/xui/en/widgets/text_editor.xml | 0 indra/newview/skins/default/xui/en/widgets/textbase.xml | 0 .../newview/skins/default/xui/en/widgets/texture_picker.xml | 0 indra/newview/skins/default/xui/en/widgets/time.xml | 0 .../skins/default/xui/en/widgets/toggleable_menu.xml | 0 indra/newview/skins/default/xui/en/widgets/tool_tip.xml | 0 indra/newview/skins/default/xui/en/widgets/toolbar.xml | 0 indra/newview/skins/default/xui/en/widgets/ui_ctrl.xml | 0 indra/newview/skins/default/xui/en/widgets/view_border.xml | 0 indra/newview/skins/default/xui/en/widgets/web_browser.xml | 0 indra/newview/skins/default/xui/en/widgets/window_shade.xml | 0 indra/newview/skins/default/xui/en/xui_version.xml | 0 indra/newview/skins/default/xui/es/floater_about.xml | 0 indra/newview/skins/default/xui/es/floater_about_land.xml | 0 indra/newview/skins/default/xui/es/floater_activeim.xml | 0 indra/newview/skins/default/xui/es/floater_auction.xml | 0 indra/newview/skins/default/xui/es/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/es/floater_avatar.xml | 0 .../newview/skins/default/xui/es/floater_avatar_picker.xml | 0 .../skins/default/xui/es/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/es/floater_beacons.xml | 0 .../newview/skins/default/xui/es/floater_build_options.xml | 0 indra/newview/skins/default/xui/es/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/es/floater_bumps.xml | 0 indra/newview/skins/default/xui/es/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/es/floater_buy_currency.xml | 0 .../skins/default/xui/es/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/es/floater_buy_land.xml | 0 indra/newview/skins/default/xui/es/floater_buy_object.xml | 0 indra/newview/skins/default/xui/es/floater_camera.xml | 0 indra/newview/skins/default/xui/es/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/es/floater_choose_group.xml | 0 indra/newview/skins/default/xui/es/floater_color_picker.xml | 0 indra/newview/skins/default/xui/es/floater_critical.xml | 0 .../skins/default/xui/es/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/es/floater_destinations.xml | 0 indra/newview/skins/default/xui/es/floater_display_name.xml | 0 .../newview/skins/default/xui/es/floater_edit_day_cycle.xml | 0 .../skins/default/xui/es/floater_edit_sky_preset.xml | 0 .../skins/default/xui/es/floater_edit_water_preset.xml | 0 .../skins/default/xui/es/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/es/floater_event.xml | 0 indra/newview/skins/default/xui/es/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/es/floater_font_test.xml | 0 indra/newview/skins/default/xui/es/floater_gesture.xml | 0 indra/newview/skins/default/xui/es/floater_god_tools.xml | 0 .../skins/default/xui/es/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/es/floater_help_browser.xml | 0 indra/newview/skins/default/xui/es/floater_how_to.xml | 0 indra/newview/skins/default/xui/es/floater_hud.xml | 0 indra/newview/skins/default/xui/es/floater_im_container.xml | 0 indra/newview/skins/default/xui/es/floater_im_session.xml | 0 .../newview/skins/default/xui/es/floater_image_preview.xml | 0 .../newview/skins/default/xui/es/floater_import_collada.xml | 0 .../newview/skins/default/xui/es/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/es/floater_inspect.xml | 0 .../default/xui/es/floater_inventory_item_properties.xml | 0 .../skins/default/xui/es/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/es/floater_joystick.xml | 0 indra/newview/skins/default/xui/es/floater_lagmeter.xml | 0 .../newview/skins/default/xui/es/floater_land_holdings.xml | 0 .../newview/skins/default/xui/es/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/es/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/es/floater_map.xml | 0 .../newview/skins/default/xui/es/floater_media_browser.xml | 0 .../newview/skins/default/xui/es/floater_media_settings.xml | 0 indra/newview/skins/default/xui/es/floater_mem_leaking.xml | 0 .../skins/default/xui/es/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/es/floater_model_preview.xml | 0 indra/newview/skins/default/xui/es/floater_moveview.xml | 0 indra/newview/skins/default/xui/es/floater_mute_object.xml | 0 .../newview/skins/default/xui/es/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/es/floater_my_inventory.xml | 0 .../newview/skins/default/xui/es/floater_object_weights.xml | 0 indra/newview/skins/default/xui/es/floater_openobject.xml | 0 .../newview/skins/default/xui/es/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/es/floater_outgoing_call.xml | 0 .../skins/default/xui/es/floater_pathfinding_characters.xml | 0 .../skins/default/xui/es/floater_pathfinding_console.xml | 0 .../skins/default/xui/es/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/es/floater_pay.xml | 0 indra/newview/skins/default/xui/es/floater_pay_object.xml | 0 indra/newview/skins/default/xui/es/floater_people.xml | 0 indra/newview/skins/default/xui/es/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/es/floater_picks.xml | 0 indra/newview/skins/default/xui/es/floater_places.xml | 0 indra/newview/skins/default/xui/es/floater_post_process.xml | 0 indra/newview/skins/default/xui/es/floater_preferences.xml | 0 .../skins/default/xui/es/floater_preferences_proxy.xml | 0 .../skins/default/xui/es/floater_preview_animation.xml | 0 .../skins/default/xui/es/floater_preview_gesture.xml | 0 .../skins/default/xui/es/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/es/floater_preview_sound.xml | 0 .../skins/default/xui/es/floater_preview_texture.xml | 0 .../skins/default/xui/es/floater_price_for_listing.xml | 0 .../skins/default/xui/es/floater_publish_classified.xml | 0 .../skins/default/xui/es/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/es/floater_region_info.xml | 0 indra/newview/skins/default/xui/es/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/es/floater_script_debug.xml | 0 .../skins/default/xui/es/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/es/floater_script_limits.xml | 0 .../newview/skins/default/xui/es/floater_script_preview.xml | 0 indra/newview/skins/default/xui/es/floater_script_queue.xml | 0 .../newview/skins/default/xui/es/floater_script_search.xml | 0 indra/newview/skins/default/xui/es/floater_search.xml | 0 indra/newview/skins/default/xui/es/floater_select_key.xml | 0 indra/newview/skins/default/xui/es/floater_sell_land.xml | 0 .../newview/skins/default/xui/es/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/es/floater_snapshot.xml | 0 .../newview/skins/default/xui/es/floater_sound_devices.xml | 0 .../newview/skins/default/xui/es/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/es/floater_spellcheck.xml | 0 .../skins/default/xui/es/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/es/floater_stats.xml | 0 indra/newview/skins/default/xui/es/floater_sys_well.xml | 0 indra/newview/skins/default/xui/es/floater_telehub.xml | 0 .../skins/default/xui/es/floater_test_layout_stacks.xml | 0 indra/newview/skins/default/xui/es/floater_texture_ctrl.xml | 0 .../skins/default/xui/es/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/es/floater_tools.xml | 0 indra/newview/skins/default/xui/es/floater_top_objects.xml | 0 indra/newview/skins/default/xui/es/floater_tos.xml | 0 indra/newview/skins/default/xui/es/floater_toybox.xml | 0 .../skins/default/xui/es/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/es/floater_url_entry.xml | 0 .../newview/skins/default/xui/es/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/es/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/es/floater_web_content.xml | 0 .../skins/default/xui/es/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/es/floater_window_size.xml | 0 indra/newview/skins/default/xui/es/floater_world_map.xml | 0 indra/newview/skins/default/xui/es/inspect_avatar.xml | 0 indra/newview/skins/default/xui/es/inspect_group.xml | 0 indra/newview/skins/default/xui/es/inspect_object.xml | 0 .../newview/skins/default/xui/es/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/es/language_settings.xml | 0 .../newview/skins/default/xui/es/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/es/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/es/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/es/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/es/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/es/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/es/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/es/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/es/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/es/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/es/menu_edit.xml | 0 indra/newview/skins/default/xui/es/menu_favorites.xml | 0 indra/newview/skins/default/xui/es/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/es/menu_group_plus.xml | 0 indra/newview/skins/default/xui/es/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/es/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/es/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/es/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/es/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/es/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/es/menu_inventory.xml | 0 indra/newview/skins/default/xui/es/menu_inventory_add.xml | 0 .../skins/default/xui/es/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/es/menu_land.xml | 0 indra/newview/skins/default/xui/es/menu_landmark.xml | 0 indra/newview/skins/default/xui/es/menu_login.xml | 0 indra/newview/skins/default/xui/es/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/es/menu_mini_map.xml | 0 .../skins/default/xui/es/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/es/menu_navbar.xml | 0 indra/newview/skins/default/xui/es/menu_nearby_chat.xml | 0 .../skins/default/xui/es/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/es/menu_object.xml | 0 indra/newview/skins/default/xui/es/menu_object_icon.xml | 0 indra/newview/skins/default/xui/es/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/es/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/es/menu_participant_list.xml | 0 .../skins/default/xui/es/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/es/menu_people_groups.xml | 0 .../skins/default/xui/es/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/es/menu_people_nearby.xml | 0 .../skins/default/xui/es/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/es/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/es/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/es/menu_picks.xml | 0 indra/newview/skins/default/xui/es/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/es/menu_place.xml | 0 .../newview/skins/default/xui/es/menu_place_add_button.xml | 0 .../skins/default/xui/es/menu_places_gear_folder.xml | 0 .../skins/default/xui/es/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/es/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/es/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/es/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/es/menu_slurl.xml | 0 .../skins/default/xui/es/menu_teleport_history_gear.xml | 0 .../skins/default/xui/es/menu_teleport_history_item.xml | 0 .../skins/default/xui/es/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/es/menu_text_editor.xml | 0 indra/newview/skins/default/xui/es/menu_toolbars.xml | 0 indra/newview/skins/default/xui/es/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/es/menu_url_agent.xml | 0 indra/newview/skins/default/xui/es/menu_url_group.xml | 0 indra/newview/skins/default/xui/es/menu_url_http.xml | 0 indra/newview/skins/default/xui/es/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/es/menu_url_map.xml | 0 indra/newview/skins/default/xui/es/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/es/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/es/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/es/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/es/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/es/menu_viewer.xml | 0 .../skins/default/xui/es/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/es/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/es/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/es/mime_types.xml | 0 indra/newview/skins/default/xui/es/mime_types_linux.xml | 0 indra/newview/skins/default/xui/es/mime_types_mac.xml | 0 indra/newview/skins/default/xui/es/notifications.xml | 0 indra/newview/skins/default/xui/es/outfit_accordion_tab.xml | 0 .../skins/default/xui/es/panel_active_object_row.xml | 0 .../skins/default/xui/es/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/es/panel_avatar_list_item.xml | 0 .../skins/default/xui/es/panel_block_list_sidetray.xml | 0 .../skins/default/xui/es/panel_body_parts_list_item.xml | 0 .../default/xui/es/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/es/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/es/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/es/panel_classified_info.xml | 0 .../skins/default/xui/es/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/es/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/es/panel_cof_wearables.xml | 0 .../default/xui/es/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/es/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/es/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/es/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/es/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/es/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/es/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/es/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/es/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/es/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/es/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/es/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/es/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/es/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/es/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/es/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/es/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/es/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/es/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/es/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/es/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/es/panel_edit_wearable.xml | 0 .../skins/default/xui/es/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/es/panel_group_general.xml | 0 .../skins/default/xui/es/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/es/panel_group_invite.xml | 0 .../newview/skins/default/xui/es/panel_group_land_money.xml | 0 .../newview/skins/default/xui/es/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/es/panel_group_notices.xml | 0 indra/newview/skins/default/xui/es/panel_group_notify.xml | 0 indra/newview/skins/default/xui/es/panel_group_roles.xml | 0 .../newview/skins/default/xui/es/panel_im_control_panel.xml | 0 indra/newview/skins/default/xui/es/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/es/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/es/panel_landmarks.xml | 0 indra/newview/skins/default/xui/es/panel_login.xml | 0 indra/newview/skins/default/xui/es/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/es/panel_me.xml | 0 .../skins/default/xui/es/panel_media_settings_general.xml | 0 .../default/xui/es/panel_media_settings_permissions.xml | 0 .../skins/default/xui/es/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/es/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/es/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/es/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/es/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/es/panel_notify_textbox.xml | 0 .../skins/default/xui/es/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/es/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/es/panel_outfit_edit.xml | 0 .../skins/default/xui/es/panel_outfits_inventory.xml | 0 .../default/xui/es/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/es/panel_outfits_list.xml | 0 .../newview/skins/default/xui/es/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/es/panel_people.xml | 0 indra/newview/skins/default/xui/es/panel_pick_info.xml | 0 indra/newview/skins/default/xui/es/panel_picks.xml | 0 indra/newview/skins/default/xui/es/panel_place_profile.xml | 0 indra/newview/skins/default/xui/es/panel_places.xml | 0 .../newview/skins/default/xui/es/panel_postcard_message.xml | 0 .../skins/default/xui/es/panel_postcard_settings.xml | 0 .../skins/default/xui/es/panel_preferences_advanced.xml | 0 .../skins/default/xui/es/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/es/panel_preferences_chat.xml | 0 .../skins/default/xui/es/panel_preferences_colors.xml | 0 .../skins/default/xui/es/panel_preferences_general.xml | 0 .../skins/default/xui/es/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/es/panel_preferences_move.xml | 0 .../skins/default/xui/es/panel_preferences_privacy.xml | 0 .../skins/default/xui/es/panel_preferences_setup.xml | 0 .../skins/default/xui/es/panel_preferences_sound.xml | 0 .../skins/default/xui/es/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/es/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/es/panel_region_debug.xml | 0 .../skins/default/xui/es/panel_region_environment.xml | 0 indra/newview/skins/default/xui/es/panel_region_estate.xml | 0 indra/newview/skins/default/xui/es/panel_region_general.xml | 0 indra/newview/skins/default/xui/es/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/es/panel_script_ed.xml | 0 .../skins/default/xui/es/panel_script_limits_my_avatar.xml | 0 .../default/xui/es/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/es/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/es/panel_scrolling_param.xml | 0 .../skins/default/xui/es/panel_scrolling_param_base.xml | 0 .../skins/default/xui/es/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/es/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/es/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/es/panel_snapshot_options.xml | 0 .../skins/default/xui/es/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/es/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/es/panel_sound_devices.xml | 0 .../skins/default/xui/es/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/es/panel_status_bar.xml | 0 .../newview/skins/default/xui/es/panel_teleport_history.xml | 0 .../skins/default/xui/es/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/es/panel_voice_effect.xml | 0 .../newview/skins/default/xui/es/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/es/panel_world_map.xml | 0 indra/newview/skins/default/xui/es/role_actions.xml | 0 indra/newview/skins/default/xui/es/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/es/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/es/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/es/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/es/strings.xml | 0 indra/newview/skins/default/xui/es/teleport_strings.xml | 0 indra/newview/skins/default/xui/es/xui_version.xml | 0 indra/newview/skins/default/xui/fr/floater_about.xml | 0 indra/newview/skins/default/xui/fr/floater_about_land.xml | 0 indra/newview/skins/default/xui/fr/floater_activeim.xml | 0 .../skins/default/xui/fr/floater_animation_anim_preview.xml | 0 .../skins/default/xui/fr/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/fr/floater_auction.xml | 0 indra/newview/skins/default/xui/fr/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/fr/floater_avatar.xml | 0 .../newview/skins/default/xui/fr/floater_avatar_picker.xml | 0 .../skins/default/xui/fr/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/fr/floater_beacons.xml | 0 .../newview/skins/default/xui/fr/floater_build_options.xml | 0 indra/newview/skins/default/xui/fr/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/fr/floater_bumps.xml | 0 indra/newview/skins/default/xui/fr/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/fr/floater_buy_currency.xml | 0 .../skins/default/xui/fr/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/fr/floater_buy_land.xml | 0 indra/newview/skins/default/xui/fr/floater_buy_object.xml | 0 indra/newview/skins/default/xui/fr/floater_camera.xml | 0 indra/newview/skins/default/xui/fr/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/fr/floater_choose_group.xml | 0 indra/newview/skins/default/xui/fr/floater_color_picker.xml | 0 indra/newview/skins/default/xui/fr/floater_critical.xml | 0 .../skins/default/xui/fr/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/fr/floater_destinations.xml | 0 indra/newview/skins/default/xui/fr/floater_display_name.xml | 0 .../newview/skins/default/xui/fr/floater_edit_day_cycle.xml | 0 .../skins/default/xui/fr/floater_edit_sky_preset.xml | 0 .../skins/default/xui/fr/floater_edit_water_preset.xml | 0 .../skins/default/xui/fr/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/fr/floater_event.xml | 0 indra/newview/skins/default/xui/fr/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/fr/floater_font_test.xml | 0 indra/newview/skins/default/xui/fr/floater_gesture.xml | 0 indra/newview/skins/default/xui/fr/floater_god_tools.xml | 0 .../skins/default/xui/fr/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/fr/floater_help_browser.xml | 0 indra/newview/skins/default/xui/fr/floater_how_to.xml | 0 indra/newview/skins/default/xui/fr/floater_hud.xml | 0 indra/newview/skins/default/xui/fr/floater_im_container.xml | 0 indra/newview/skins/default/xui/fr/floater_im_session.xml | 0 .../newview/skins/default/xui/fr/floater_image_preview.xml | 0 .../newview/skins/default/xui/fr/floater_import_collada.xml | 0 .../newview/skins/default/xui/fr/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/fr/floater_inspect.xml | 0 .../default/xui/fr/floater_inventory_item_properties.xml | 0 .../skins/default/xui/fr/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/fr/floater_joystick.xml | 0 indra/newview/skins/default/xui/fr/floater_lagmeter.xml | 0 .../newview/skins/default/xui/fr/floater_land_holdings.xml | 0 .../newview/skins/default/xui/fr/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/fr/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/fr/floater_map.xml | 0 .../newview/skins/default/xui/fr/floater_media_browser.xml | 0 .../newview/skins/default/xui/fr/floater_media_settings.xml | 0 indra/newview/skins/default/xui/fr/floater_mem_leaking.xml | 0 .../skins/default/xui/fr/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/fr/floater_model_preview.xml | 0 indra/newview/skins/default/xui/fr/floater_moveview.xml | 0 indra/newview/skins/default/xui/fr/floater_mute_object.xml | 0 .../newview/skins/default/xui/fr/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/fr/floater_my_inventory.xml | 0 indra/newview/skins/default/xui/fr/floater_notification.xml | 0 .../skins/default/xui/fr/floater_notifications_console.xml | 0 .../newview/skins/default/xui/fr/floater_object_weights.xml | 0 indra/newview/skins/default/xui/fr/floater_openobject.xml | 0 .../newview/skins/default/xui/fr/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/fr/floater_outgoing_call.xml | 0 .../skins/default/xui/fr/floater_pathfinding_characters.xml | 0 .../skins/default/xui/fr/floater_pathfinding_console.xml | 0 .../skins/default/xui/fr/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/fr/floater_pay.xml | 0 indra/newview/skins/default/xui/fr/floater_pay_object.xml | 0 indra/newview/skins/default/xui/fr/floater_people.xml | 0 indra/newview/skins/default/xui/fr/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/fr/floater_picks.xml | 0 indra/newview/skins/default/xui/fr/floater_places.xml | 0 indra/newview/skins/default/xui/fr/floater_post_process.xml | 0 indra/newview/skins/default/xui/fr/floater_preferences.xml | 0 .../skins/default/xui/fr/floater_preferences_proxy.xml | 0 .../skins/default/xui/fr/floater_preview_animation.xml | 0 .../skins/default/xui/fr/floater_preview_gesture.xml | 0 .../skins/default/xui/fr/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/fr/floater_preview_sound.xml | 0 .../skins/default/xui/fr/floater_preview_texture.xml | 0 .../skins/default/xui/fr/floater_price_for_listing.xml | 0 .../skins/default/xui/fr/floater_publish_classified.xml | 0 .../skins/default/xui/fr/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/fr/floater_region_info.xml | 0 indra/newview/skins/default/xui/fr/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/fr/floater_script_debug.xml | 0 .../skins/default/xui/fr/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/fr/floater_script_limits.xml | 0 .../newview/skins/default/xui/fr/floater_script_preview.xml | 0 indra/newview/skins/default/xui/fr/floater_script_queue.xml | 0 .../newview/skins/default/xui/fr/floater_script_search.xml | 0 indra/newview/skins/default/xui/fr/floater_search.xml | 0 indra/newview/skins/default/xui/fr/floater_select_key.xml | 0 indra/newview/skins/default/xui/fr/floater_sell_land.xml | 0 .../newview/skins/default/xui/fr/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/fr/floater_snapshot.xml | 0 .../newview/skins/default/xui/fr/floater_sound_devices.xml | 0 .../newview/skins/default/xui/fr/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/fr/floater_spellcheck.xml | 0 .../skins/default/xui/fr/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/fr/floater_stats.xml | 0 indra/newview/skins/default/xui/fr/floater_sys_well.xml | 0 indra/newview/skins/default/xui/fr/floater_telehub.xml | 0 .../skins/default/xui/fr/floater_test_layout_stacks.xml | 0 .../default/xui/fr/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/fr/floater_texture_ctrl.xml | 0 .../skins/default/xui/fr/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/fr/floater_tools.xml | 0 indra/newview/skins/default/xui/fr/floater_top_objects.xml | 0 indra/newview/skins/default/xui/fr/floater_tos.xml | 0 indra/newview/skins/default/xui/fr/floater_toybox.xml | 0 .../skins/default/xui/fr/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/fr/floater_url_entry.xml | 0 .../newview/skins/default/xui/fr/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/fr/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/fr/floater_web_content.xml | 0 .../skins/default/xui/fr/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/fr/floater_window_size.xml | 0 indra/newview/skins/default/xui/fr/floater_world_map.xml | 0 indra/newview/skins/default/xui/fr/fonts.xml | 0 indra/newview/skins/default/xui/fr/inspect_avatar.xml | 0 indra/newview/skins/default/xui/fr/inspect_group.xml | 0 indra/newview/skins/default/xui/fr/inspect_object.xml | 0 .../newview/skins/default/xui/fr/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/fr/language_settings.xml | 0 .../newview/skins/default/xui/fr/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/fr/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/fr/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/fr/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/fr/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/fr/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/fr/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/fr/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/fr/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/fr/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/fr/menu_edit.xml | 0 indra/newview/skins/default/xui/fr/menu_favorites.xml | 0 indra/newview/skins/default/xui/fr/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/fr/menu_group_plus.xml | 0 indra/newview/skins/default/xui/fr/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/fr/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/fr/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/fr/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/fr/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/fr/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/fr/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/fr/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/fr/menu_inventory.xml | 0 indra/newview/skins/default/xui/fr/menu_inventory_add.xml | 0 .../skins/default/xui/fr/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/fr/menu_land.xml | 0 indra/newview/skins/default/xui/fr/menu_landmark.xml | 0 indra/newview/skins/default/xui/fr/menu_login.xml | 0 indra/newview/skins/default/xui/fr/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/fr/menu_mini_map.xml | 0 .../skins/default/xui/fr/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/fr/menu_navbar.xml | 0 indra/newview/skins/default/xui/fr/menu_nearby_chat.xml | 0 .../skins/default/xui/fr/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/fr/menu_object.xml | 0 indra/newview/skins/default/xui/fr/menu_object_icon.xml | 0 indra/newview/skins/default/xui/fr/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/fr/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/fr/menu_participant_list.xml | 0 .../skins/default/xui/fr/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/fr/menu_people_groups.xml | 0 .../skins/default/xui/fr/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/fr/menu_people_nearby.xml | 0 .../skins/default/xui/fr/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/fr/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/fr/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/fr/menu_picks.xml | 0 indra/newview/skins/default/xui/fr/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/fr/menu_place.xml | 0 .../newview/skins/default/xui/fr/menu_place_add_button.xml | 0 .../skins/default/xui/fr/menu_places_gear_folder.xml | 0 .../skins/default/xui/fr/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/fr/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/fr/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/fr/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/fr/menu_slurl.xml | 0 .../skins/default/xui/fr/menu_teleport_history_gear.xml | 0 .../skins/default/xui/fr/menu_teleport_history_item.xml | 0 .../skins/default/xui/fr/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/fr/menu_text_editor.xml | 0 indra/newview/skins/default/xui/fr/menu_toolbars.xml | 0 indra/newview/skins/default/xui/fr/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/fr/menu_url_agent.xml | 0 indra/newview/skins/default/xui/fr/menu_url_group.xml | 0 indra/newview/skins/default/xui/fr/menu_url_http.xml | 0 indra/newview/skins/default/xui/fr/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/fr/menu_url_map.xml | 0 indra/newview/skins/default/xui/fr/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/fr/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/fr/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/fr/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/fr/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/fr/menu_viewer.xml | 0 .../skins/default/xui/fr/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/fr/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/fr/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/fr/mime_types.xml | 0 indra/newview/skins/default/xui/fr/mime_types_linux.xml | 0 indra/newview/skins/default/xui/fr/mime_types_mac.xml | 0 indra/newview/skins/default/xui/fr/notifications.xml | 0 indra/newview/skins/default/xui/fr/outfit_accordion_tab.xml | 0 .../skins/default/xui/fr/panel_active_object_row.xml | 0 .../skins/default/xui/fr/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/fr/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/fr/panel_avatar_tag.xml | 0 .../skins/default/xui/fr/panel_block_list_sidetray.xml | 0 .../skins/default/xui/fr/panel_body_parts_list_item.xml | 0 .../default/xui/fr/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/fr/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/fr/panel_chat_header.xml | 0 indra/newview/skins/default/xui/fr/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/fr/panel_classified_info.xml | 0 .../skins/default/xui/fr/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/fr/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/fr/panel_cof_wearables.xml | 0 .../default/xui/fr/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/fr/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/fr/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/fr/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/fr/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/fr/panel_edit_wearable.xml | 0 .../skins/default/xui/fr/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/fr/panel_group_general.xml | 0 .../skins/default/xui/fr/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/fr/panel_group_invite.xml | 0 .../newview/skins/default/xui/fr/panel_group_land_money.xml | 0 .../newview/skins/default/xui/fr/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/fr/panel_group_notices.xml | 0 indra/newview/skins/default/xui/fr/panel_group_notify.xml | 0 indra/newview/skins/default/xui/fr/panel_group_roles.xml | 0 .../newview/skins/default/xui/fr/panel_im_control_panel.xml | 0 .../newview/skins/default/xui/fr/panel_instant_message.xml | 0 indra/newview/skins/default/xui/fr/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/fr/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/fr/panel_landmarks.xml | 0 indra/newview/skins/default/xui/fr/panel_login.xml | 0 indra/newview/skins/default/xui/fr/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/fr/panel_me.xml | 0 .../skins/default/xui/fr/panel_media_settings_general.xml | 0 .../default/xui/fr/panel_media_settings_permissions.xml | 0 .../skins/default/xui/fr/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/fr/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/fr/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/fr/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/fr/panel_nearby_media.xml | 0 .../skins/default/xui/fr/panel_notifications_channel.xml | 0 indra/newview/skins/default/xui/fr/panel_notify_textbox.xml | 0 .../skins/default/xui/fr/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/fr/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/fr/panel_outfit_edit.xml | 0 .../skins/default/xui/fr/panel_outfits_inventory.xml | 0 .../default/xui/fr/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/fr/panel_outfits_list.xml | 0 .../newview/skins/default/xui/fr/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/fr/panel_people.xml | 0 indra/newview/skins/default/xui/fr/panel_pick_info.xml | 0 indra/newview/skins/default/xui/fr/panel_picks.xml | 0 indra/newview/skins/default/xui/fr/panel_place_profile.xml | 0 indra/newview/skins/default/xui/fr/panel_places.xml | 0 .../newview/skins/default/xui/fr/panel_postcard_message.xml | 0 .../skins/default/xui/fr/panel_postcard_settings.xml | 0 .../skins/default/xui/fr/panel_preferences_advanced.xml | 0 .../skins/default/xui/fr/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/fr/panel_preferences_chat.xml | 0 .../skins/default/xui/fr/panel_preferences_colors.xml | 0 .../skins/default/xui/fr/panel_preferences_general.xml | 0 .../skins/default/xui/fr/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/fr/panel_preferences_move.xml | 0 .../skins/default/xui/fr/panel_preferences_privacy.xml | 0 .../skins/default/xui/fr/panel_preferences_setup.xml | 0 .../skins/default/xui/fr/panel_preferences_sound.xml | 0 .../skins/default/xui/fr/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/fr/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/fr/panel_region_debug.xml | 0 .../skins/default/xui/fr/panel_region_environment.xml | 0 indra/newview/skins/default/xui/fr/panel_region_estate.xml | 0 indra/newview/skins/default/xui/fr/panel_region_general.xml | 0 indra/newview/skins/default/xui/fr/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/fr/panel_script_ed.xml | 0 .../skins/default/xui/fr/panel_script_limits_my_avatar.xml | 0 .../default/xui/fr/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/fr/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/fr/panel_scrolling_param.xml | 0 .../skins/default/xui/fr/panel_scrolling_param_base.xml | 0 .../skins/default/xui/fr/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/fr/panel_sidetray_home_tab.xml | 0 .../skins/default/xui/fr/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/fr/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/fr/panel_snapshot_options.xml | 0 .../skins/default/xui/fr/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/fr/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/fr/panel_sound_devices.xml | 0 .../skins/default/xui/fr/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/fr/panel_status_bar.xml | 0 indra/newview/skins/default/xui/fr/panel_sys_well_item.xml | 0 .../newview/skins/default/xui/fr/panel_teleport_history.xml | 0 .../skins/default/xui/fr/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/fr/panel_voice_effect.xml | 0 .../newview/skins/default/xui/fr/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/fr/panel_world_map.xml | 0 indra/newview/skins/default/xui/fr/role_actions.xml | 0 indra/newview/skins/default/xui/fr/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/fr/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/fr/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/fr/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/fr/strings.xml | 0 indra/newview/skins/default/xui/fr/teleport_strings.xml | 0 indra/newview/skins/default/xui/fr/xui_version.xml | 0 indra/newview/skins/default/xui/it/floater_about.xml | 0 indra/newview/skins/default/xui/it/floater_about_land.xml | 0 indra/newview/skins/default/xui/it/floater_activeim.xml | 0 .../skins/default/xui/it/floater_animation_anim_preview.xml | 0 .../skins/default/xui/it/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/it/floater_auction.xml | 0 indra/newview/skins/default/xui/it/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/it/floater_avatar.xml | 0 .../newview/skins/default/xui/it/floater_avatar_picker.xml | 0 .../skins/default/xui/it/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/it/floater_beacons.xml | 0 .../newview/skins/default/xui/it/floater_build_options.xml | 0 indra/newview/skins/default/xui/it/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/it/floater_bumps.xml | 0 indra/newview/skins/default/xui/it/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/it/floater_buy_currency.xml | 0 .../skins/default/xui/it/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/it/floater_buy_land.xml | 0 indra/newview/skins/default/xui/it/floater_buy_object.xml | 0 indra/newview/skins/default/xui/it/floater_camera.xml | 0 indra/newview/skins/default/xui/it/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/it/floater_choose_group.xml | 0 indra/newview/skins/default/xui/it/floater_color_picker.xml | 0 indra/newview/skins/default/xui/it/floater_critical.xml | 0 .../skins/default/xui/it/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/it/floater_destinations.xml | 0 indra/newview/skins/default/xui/it/floater_display_name.xml | 0 .../newview/skins/default/xui/it/floater_edit_day_cycle.xml | 0 .../skins/default/xui/it/floater_edit_sky_preset.xml | 0 .../skins/default/xui/it/floater_edit_water_preset.xml | 0 .../skins/default/xui/it/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/it/floater_event.xml | 0 indra/newview/skins/default/xui/it/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/it/floater_font_test.xml | 0 indra/newview/skins/default/xui/it/floater_gesture.xml | 0 indra/newview/skins/default/xui/it/floater_god_tools.xml | 0 .../skins/default/xui/it/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/it/floater_help_browser.xml | 0 indra/newview/skins/default/xui/it/floater_how_to.xml | 0 indra/newview/skins/default/xui/it/floater_hud.xml | 0 indra/newview/skins/default/xui/it/floater_im_container.xml | 0 indra/newview/skins/default/xui/it/floater_im_session.xml | 0 .../newview/skins/default/xui/it/floater_image_preview.xml | 0 .../newview/skins/default/xui/it/floater_import_collada.xml | 0 .../newview/skins/default/xui/it/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/it/floater_inspect.xml | 0 .../default/xui/it/floater_inventory_item_properties.xml | 0 .../skins/default/xui/it/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/it/floater_joystick.xml | 0 indra/newview/skins/default/xui/it/floater_lagmeter.xml | 0 .../newview/skins/default/xui/it/floater_land_holdings.xml | 0 .../newview/skins/default/xui/it/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/it/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/it/floater_map.xml | 0 .../newview/skins/default/xui/it/floater_media_browser.xml | 0 .../newview/skins/default/xui/it/floater_media_settings.xml | 0 indra/newview/skins/default/xui/it/floater_mem_leaking.xml | 0 .../skins/default/xui/it/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/it/floater_model_preview.xml | 0 indra/newview/skins/default/xui/it/floater_moveview.xml | 0 indra/newview/skins/default/xui/it/floater_mute_object.xml | 0 .../newview/skins/default/xui/it/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/it/floater_my_inventory.xml | 0 .../newview/skins/default/xui/it/floater_object_weights.xml | 0 indra/newview/skins/default/xui/it/floater_openobject.xml | 0 .../newview/skins/default/xui/it/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/it/floater_outgoing_call.xml | 0 .../skins/default/xui/it/floater_pathfinding_characters.xml | 0 .../skins/default/xui/it/floater_pathfinding_console.xml | 0 .../skins/default/xui/it/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/it/floater_pay.xml | 0 indra/newview/skins/default/xui/it/floater_pay_object.xml | 0 indra/newview/skins/default/xui/it/floater_people.xml | 0 indra/newview/skins/default/xui/it/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/it/floater_picks.xml | 0 indra/newview/skins/default/xui/it/floater_places.xml | 0 indra/newview/skins/default/xui/it/floater_post_process.xml | 0 indra/newview/skins/default/xui/it/floater_preferences.xml | 0 .../skins/default/xui/it/floater_preferences_proxy.xml | 0 .../skins/default/xui/it/floater_preview_animation.xml | 0 .../skins/default/xui/it/floater_preview_gesture.xml | 0 .../skins/default/xui/it/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/it/floater_preview_sound.xml | 0 .../skins/default/xui/it/floater_preview_texture.xml | 0 .../skins/default/xui/it/floater_price_for_listing.xml | 0 .../skins/default/xui/it/floater_publish_classified.xml | 0 .../skins/default/xui/it/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/it/floater_region_info.xml | 0 indra/newview/skins/default/xui/it/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/it/floater_script_debug.xml | 0 .../skins/default/xui/it/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/it/floater_script_limits.xml | 0 .../newview/skins/default/xui/it/floater_script_preview.xml | 0 indra/newview/skins/default/xui/it/floater_script_queue.xml | 0 .../newview/skins/default/xui/it/floater_script_search.xml | 0 indra/newview/skins/default/xui/it/floater_search.xml | 0 indra/newview/skins/default/xui/it/floater_select_key.xml | 0 indra/newview/skins/default/xui/it/floater_sell_land.xml | 0 .../newview/skins/default/xui/it/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/it/floater_snapshot.xml | 0 .../newview/skins/default/xui/it/floater_sound_devices.xml | 0 .../newview/skins/default/xui/it/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/it/floater_spellcheck.xml | 0 .../skins/default/xui/it/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/it/floater_stats.xml | 0 indra/newview/skins/default/xui/it/floater_sys_well.xml | 0 indra/newview/skins/default/xui/it/floater_telehub.xml | 0 .../skins/default/xui/it/floater_test_layout_stacks.xml | 0 .../default/xui/it/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/it/floater_texture_ctrl.xml | 0 .../skins/default/xui/it/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/it/floater_tools.xml | 0 indra/newview/skins/default/xui/it/floater_top_objects.xml | 0 indra/newview/skins/default/xui/it/floater_tos.xml | 0 indra/newview/skins/default/xui/it/floater_toybox.xml | 0 .../skins/default/xui/it/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/it/floater_url_entry.xml | 0 .../newview/skins/default/xui/it/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/it/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/it/floater_web_content.xml | 0 .../skins/default/xui/it/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/it/floater_window_size.xml | 0 indra/newview/skins/default/xui/it/floater_world_map.xml | 0 indra/newview/skins/default/xui/it/inspect_avatar.xml | 0 indra/newview/skins/default/xui/it/inspect_group.xml | 0 indra/newview/skins/default/xui/it/inspect_object.xml | 0 .../newview/skins/default/xui/it/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/it/language_settings.xml | 0 .../newview/skins/default/xui/it/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/it/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/it/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/it/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/it/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/it/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/it/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/it/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/it/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/it/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/it/menu_edit.xml | 0 indra/newview/skins/default/xui/it/menu_favorites.xml | 0 indra/newview/skins/default/xui/it/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/it/menu_group_plus.xml | 0 indra/newview/skins/default/xui/it/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/it/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/it/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/it/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/it/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/it/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/it/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/it/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/it/menu_inventory.xml | 0 indra/newview/skins/default/xui/it/menu_inventory_add.xml | 0 .../skins/default/xui/it/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/it/menu_land.xml | 0 indra/newview/skins/default/xui/it/menu_landmark.xml | 0 indra/newview/skins/default/xui/it/menu_login.xml | 0 indra/newview/skins/default/xui/it/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/it/menu_mini_map.xml | 0 .../skins/default/xui/it/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/it/menu_navbar.xml | 0 indra/newview/skins/default/xui/it/menu_nearby_chat.xml | 0 .../skins/default/xui/it/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/it/menu_object.xml | 0 indra/newview/skins/default/xui/it/menu_object_icon.xml | 0 indra/newview/skins/default/xui/it/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/it/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/it/menu_participant_list.xml | 0 .../skins/default/xui/it/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/it/menu_people_groups.xml | 0 .../skins/default/xui/it/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/it/menu_people_nearby.xml | 0 .../skins/default/xui/it/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/it/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/it/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/it/menu_picks.xml | 0 indra/newview/skins/default/xui/it/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/it/menu_place.xml | 0 .../newview/skins/default/xui/it/menu_place_add_button.xml | 0 .../skins/default/xui/it/menu_places_gear_folder.xml | 0 .../skins/default/xui/it/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/it/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/it/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/it/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/it/menu_slurl.xml | 0 .../skins/default/xui/it/menu_teleport_history_gear.xml | 0 .../skins/default/xui/it/menu_teleport_history_item.xml | 0 .../skins/default/xui/it/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/it/menu_text_editor.xml | 0 indra/newview/skins/default/xui/it/menu_toolbars.xml | 0 indra/newview/skins/default/xui/it/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/it/menu_url_agent.xml | 0 indra/newview/skins/default/xui/it/menu_url_group.xml | 0 indra/newview/skins/default/xui/it/menu_url_http.xml | 0 indra/newview/skins/default/xui/it/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/it/menu_url_map.xml | 0 indra/newview/skins/default/xui/it/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/it/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/it/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/it/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/it/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/it/menu_viewer.xml | 0 .../skins/default/xui/it/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/it/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/it/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/it/mime_types.xml | 0 indra/newview/skins/default/xui/it/mime_types_linux.xml | 0 indra/newview/skins/default/xui/it/mime_types_mac.xml | 0 indra/newview/skins/default/xui/it/notifications.xml | 0 indra/newview/skins/default/xui/it/outfit_accordion_tab.xml | 0 .../skins/default/xui/it/panel_active_object_row.xml | 0 .../skins/default/xui/it/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/it/panel_avatar_list_item.xml | 0 .../skins/default/xui/it/panel_block_list_sidetray.xml | 0 .../skins/default/xui/it/panel_body_parts_list_item.xml | 0 .../default/xui/it/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/it/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/it/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/it/panel_classified_info.xml | 0 .../skins/default/xui/it/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/it/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/it/panel_cof_wearables.xml | 0 .../default/xui/it/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/it/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/it/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/it/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/it/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/it/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/it/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/it/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/it/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/it/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/it/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/it/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/it/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/it/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/it/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/it/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/it/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/it/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/it/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/it/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/it/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/it/panel_edit_wearable.xml | 0 .../skins/default/xui/it/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/it/panel_group_general.xml | 0 .../skins/default/xui/it/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/it/panel_group_invite.xml | 0 .../newview/skins/default/xui/it/panel_group_land_money.xml | 0 .../newview/skins/default/xui/it/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/it/panel_group_notices.xml | 0 indra/newview/skins/default/xui/it/panel_group_notify.xml | 0 indra/newview/skins/default/xui/it/panel_group_roles.xml | 0 .../newview/skins/default/xui/it/panel_im_control_panel.xml | 0 indra/newview/skins/default/xui/it/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/it/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/it/panel_landmarks.xml | 0 indra/newview/skins/default/xui/it/panel_login.xml | 0 indra/newview/skins/default/xui/it/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/it/panel_me.xml | 0 .../skins/default/xui/it/panel_media_settings_general.xml | 0 .../default/xui/it/panel_media_settings_permissions.xml | 0 .../skins/default/xui/it/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/it/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/it/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/it/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/it/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/it/panel_notify_textbox.xml | 0 .../skins/default/xui/it/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/it/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/it/panel_outfit_edit.xml | 0 .../skins/default/xui/it/panel_outfits_inventory.xml | 0 .../default/xui/it/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/it/panel_outfits_list.xml | 0 .../newview/skins/default/xui/it/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/it/panel_people.xml | 0 indra/newview/skins/default/xui/it/panel_pick_info.xml | 0 indra/newview/skins/default/xui/it/panel_picks.xml | 0 indra/newview/skins/default/xui/it/panel_place_profile.xml | 0 indra/newview/skins/default/xui/it/panel_places.xml | 0 .../newview/skins/default/xui/it/panel_postcard_message.xml | 0 .../skins/default/xui/it/panel_postcard_settings.xml | 0 .../skins/default/xui/it/panel_preferences_advanced.xml | 0 .../skins/default/xui/it/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/it/panel_preferences_chat.xml | 0 .../skins/default/xui/it/panel_preferences_colors.xml | 0 .../skins/default/xui/it/panel_preferences_general.xml | 0 .../skins/default/xui/it/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/it/panel_preferences_move.xml | 0 .../skins/default/xui/it/panel_preferences_privacy.xml | 0 .../skins/default/xui/it/panel_preferences_setup.xml | 0 .../skins/default/xui/it/panel_preferences_sound.xml | 0 .../skins/default/xui/it/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/it/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/it/panel_region_debug.xml | 0 .../skins/default/xui/it/panel_region_environment.xml | 0 indra/newview/skins/default/xui/it/panel_region_estate.xml | 0 indra/newview/skins/default/xui/it/panel_region_general.xml | 0 indra/newview/skins/default/xui/it/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/it/panel_script_ed.xml | 0 .../skins/default/xui/it/panel_script_limits_my_avatar.xml | 0 .../default/xui/it/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/it/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/it/panel_scrolling_param.xml | 0 .../skins/default/xui/it/panel_scrolling_param_base.xml | 0 .../skins/default/xui/it/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/it/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/it/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/it/panel_snapshot_options.xml | 0 .../skins/default/xui/it/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/it/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/it/panel_sound_devices.xml | 0 .../skins/default/xui/it/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/it/panel_status_bar.xml | 0 .../newview/skins/default/xui/it/panel_teleport_history.xml | 0 .../skins/default/xui/it/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/it/panel_voice_effect.xml | 0 .../newview/skins/default/xui/it/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/it/panel_world_map.xml | 0 indra/newview/skins/default/xui/it/role_actions.xml | 0 indra/newview/skins/default/xui/it/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/it/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/it/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/it/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/it/strings.xml | 0 indra/newview/skins/default/xui/it/teleport_strings.xml | 0 indra/newview/skins/default/xui/ja/floater_about.xml | 0 indra/newview/skins/default/xui/ja/floater_about_land.xml | 0 indra/newview/skins/default/xui/ja/floater_activeim.xml | 0 .../skins/default/xui/ja/floater_animation_anim_preview.xml | 0 .../skins/default/xui/ja/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/ja/floater_auction.xml | 0 indra/newview/skins/default/xui/ja/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/ja/floater_avatar.xml | 0 .../newview/skins/default/xui/ja/floater_avatar_picker.xml | 0 .../skins/default/xui/ja/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/ja/floater_beacons.xml | 0 .../newview/skins/default/xui/ja/floater_build_options.xml | 0 indra/newview/skins/default/xui/ja/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/ja/floater_bumps.xml | 0 indra/newview/skins/default/xui/ja/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/ja/floater_buy_currency.xml | 0 .../skins/default/xui/ja/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/ja/floater_buy_land.xml | 0 indra/newview/skins/default/xui/ja/floater_buy_object.xml | 0 indra/newview/skins/default/xui/ja/floater_camera.xml | 0 indra/newview/skins/default/xui/ja/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/ja/floater_choose_group.xml | 0 indra/newview/skins/default/xui/ja/floater_color_picker.xml | 0 indra/newview/skins/default/xui/ja/floater_critical.xml | 0 .../skins/default/xui/ja/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/ja/floater_destinations.xml | 0 indra/newview/skins/default/xui/ja/floater_display_name.xml | 0 .../newview/skins/default/xui/ja/floater_edit_day_cycle.xml | 0 .../skins/default/xui/ja/floater_edit_sky_preset.xml | 0 .../skins/default/xui/ja/floater_edit_water_preset.xml | 0 .../skins/default/xui/ja/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/ja/floater_event.xml | 0 indra/newview/skins/default/xui/ja/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/ja/floater_font_test.xml | 0 indra/newview/skins/default/xui/ja/floater_gesture.xml | 0 indra/newview/skins/default/xui/ja/floater_god_tools.xml | 0 .../skins/default/xui/ja/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/ja/floater_help_browser.xml | 0 indra/newview/skins/default/xui/ja/floater_how_to.xml | 0 indra/newview/skins/default/xui/ja/floater_hud.xml | 0 indra/newview/skins/default/xui/ja/floater_im_container.xml | 0 indra/newview/skins/default/xui/ja/floater_im_session.xml | 0 .../newview/skins/default/xui/ja/floater_image_preview.xml | 0 .../newview/skins/default/xui/ja/floater_import_collada.xml | 0 .../newview/skins/default/xui/ja/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/ja/floater_inspect.xml | 0 .../default/xui/ja/floater_inventory_item_properties.xml | 0 .../skins/default/xui/ja/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/ja/floater_joystick.xml | 0 indra/newview/skins/default/xui/ja/floater_lagmeter.xml | 0 .../newview/skins/default/xui/ja/floater_land_holdings.xml | 0 .../newview/skins/default/xui/ja/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/ja/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/ja/floater_map.xml | 0 .../newview/skins/default/xui/ja/floater_media_browser.xml | 0 .../newview/skins/default/xui/ja/floater_media_settings.xml | 0 indra/newview/skins/default/xui/ja/floater_mem_leaking.xml | 0 .../skins/default/xui/ja/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/ja/floater_model_preview.xml | 0 indra/newview/skins/default/xui/ja/floater_moveview.xml | 0 indra/newview/skins/default/xui/ja/floater_mute_object.xml | 0 .../newview/skins/default/xui/ja/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/ja/floater_my_inventory.xml | 0 indra/newview/skins/default/xui/ja/floater_notification.xml | 0 .../skins/default/xui/ja/floater_notifications_console.xml | 0 .../newview/skins/default/xui/ja/floater_object_weights.xml | 0 indra/newview/skins/default/xui/ja/floater_openobject.xml | 0 .../newview/skins/default/xui/ja/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/ja/floater_outgoing_call.xml | 0 .../skins/default/xui/ja/floater_pathfinding_characters.xml | 0 .../skins/default/xui/ja/floater_pathfinding_console.xml | 0 .../skins/default/xui/ja/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/ja/floater_pay.xml | 0 indra/newview/skins/default/xui/ja/floater_pay_object.xml | 0 indra/newview/skins/default/xui/ja/floater_people.xml | 0 indra/newview/skins/default/xui/ja/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/ja/floater_picks.xml | 0 indra/newview/skins/default/xui/ja/floater_places.xml | 0 indra/newview/skins/default/xui/ja/floater_post_process.xml | 0 indra/newview/skins/default/xui/ja/floater_preferences.xml | 0 .../skins/default/xui/ja/floater_preferences_proxy.xml | 0 .../skins/default/xui/ja/floater_preview_animation.xml | 0 .../skins/default/xui/ja/floater_preview_gesture.xml | 0 .../skins/default/xui/ja/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/ja/floater_preview_sound.xml | 0 .../skins/default/xui/ja/floater_preview_texture.xml | 0 .../skins/default/xui/ja/floater_price_for_listing.xml | 0 .../skins/default/xui/ja/floater_publish_classified.xml | 0 .../skins/default/xui/ja/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/ja/floater_region_info.xml | 0 indra/newview/skins/default/xui/ja/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/ja/floater_script_debug.xml | 0 .../skins/default/xui/ja/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/ja/floater_script_limits.xml | 0 .../newview/skins/default/xui/ja/floater_script_preview.xml | 0 indra/newview/skins/default/xui/ja/floater_script_queue.xml | 0 .../newview/skins/default/xui/ja/floater_script_search.xml | 0 indra/newview/skins/default/xui/ja/floater_search.xml | 0 indra/newview/skins/default/xui/ja/floater_select_key.xml | 0 indra/newview/skins/default/xui/ja/floater_sell_land.xml | 0 .../newview/skins/default/xui/ja/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/ja/floater_snapshot.xml | 0 .../newview/skins/default/xui/ja/floater_sound_devices.xml | 0 .../newview/skins/default/xui/ja/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/ja/floater_spellcheck.xml | 0 .../skins/default/xui/ja/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/ja/floater_stats.xml | 0 indra/newview/skins/default/xui/ja/floater_sys_well.xml | 0 indra/newview/skins/default/xui/ja/floater_telehub.xml | 0 .../skins/default/xui/ja/floater_test_layout_stacks.xml | 0 .../default/xui/ja/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml | 0 .../skins/default/xui/ja/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/ja/floater_tools.xml | 0 indra/newview/skins/default/xui/ja/floater_top_objects.xml | 0 indra/newview/skins/default/xui/ja/floater_tos.xml | 0 indra/newview/skins/default/xui/ja/floater_toybox.xml | 0 .../skins/default/xui/ja/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/ja/floater_url_entry.xml | 0 .../newview/skins/default/xui/ja/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/ja/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/ja/floater_web_content.xml | 0 .../skins/default/xui/ja/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/ja/floater_window_size.xml | 0 indra/newview/skins/default/xui/ja/floater_world_map.xml | 0 indra/newview/skins/default/xui/ja/inspect_avatar.xml | 0 indra/newview/skins/default/xui/ja/inspect_group.xml | 0 indra/newview/skins/default/xui/ja/inspect_object.xml | 0 .../newview/skins/default/xui/ja/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/ja/language_settings.xml | 0 .../newview/skins/default/xui/ja/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/ja/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/ja/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/ja/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/ja/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/ja/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/ja/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/ja/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/ja/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/ja/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/ja/menu_edit.xml | 0 indra/newview/skins/default/xui/ja/menu_favorites.xml | 0 indra/newview/skins/default/xui/ja/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/ja/menu_group_plus.xml | 0 indra/newview/skins/default/xui/ja/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/ja/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/ja/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/ja/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/ja/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/ja/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/ja/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/ja/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/ja/menu_inventory.xml | 0 indra/newview/skins/default/xui/ja/menu_inventory_add.xml | 0 .../skins/default/xui/ja/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/ja/menu_land.xml | 0 indra/newview/skins/default/xui/ja/menu_landmark.xml | 0 indra/newview/skins/default/xui/ja/menu_login.xml | 0 indra/newview/skins/default/xui/ja/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/ja/menu_mini_map.xml | 0 .../skins/default/xui/ja/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/ja/menu_navbar.xml | 0 indra/newview/skins/default/xui/ja/menu_nearby_chat.xml | 0 .../skins/default/xui/ja/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/ja/menu_object.xml | 0 indra/newview/skins/default/xui/ja/menu_object_icon.xml | 0 indra/newview/skins/default/xui/ja/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/ja/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/ja/menu_participant_list.xml | 0 .../skins/default/xui/ja/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/ja/menu_people_groups.xml | 0 .../skins/default/xui/ja/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/ja/menu_people_nearby.xml | 0 .../skins/default/xui/ja/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/ja/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/ja/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/ja/menu_picks.xml | 0 indra/newview/skins/default/xui/ja/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/ja/menu_place.xml | 0 .../newview/skins/default/xui/ja/menu_place_add_button.xml | 0 .../skins/default/xui/ja/menu_places_gear_folder.xml | 0 .../skins/default/xui/ja/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/ja/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/ja/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/ja/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/ja/menu_slurl.xml | 0 .../skins/default/xui/ja/menu_teleport_history_gear.xml | 0 .../skins/default/xui/ja/menu_teleport_history_item.xml | 0 .../skins/default/xui/ja/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/ja/menu_text_editor.xml | 0 indra/newview/skins/default/xui/ja/menu_toolbars.xml | 0 indra/newview/skins/default/xui/ja/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/ja/menu_url_agent.xml | 0 indra/newview/skins/default/xui/ja/menu_url_group.xml | 0 indra/newview/skins/default/xui/ja/menu_url_http.xml | 0 indra/newview/skins/default/xui/ja/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/ja/menu_url_map.xml | 0 indra/newview/skins/default/xui/ja/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/ja/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/ja/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/ja/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/ja/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/ja/menu_viewer.xml | 0 .../skins/default/xui/ja/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/ja/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/ja/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/ja/mime_types.xml | 0 indra/newview/skins/default/xui/ja/mime_types_linux.xml | 0 indra/newview/skins/default/xui/ja/mime_types_mac.xml | 0 indra/newview/skins/default/xui/ja/notifications.xml | 0 indra/newview/skins/default/xui/ja/outfit_accordion_tab.xml | 0 .../skins/default/xui/ja/panel_active_object_row.xml | 0 .../skins/default/xui/ja/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/ja/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/ja/panel_avatar_tag.xml | 0 .../skins/default/xui/ja/panel_block_list_sidetray.xml | 0 .../skins/default/xui/ja/panel_body_parts_list_item.xml | 0 .../default/xui/ja/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/ja/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/ja/panel_chat_header.xml | 0 indra/newview/skins/default/xui/ja/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/ja/panel_classified_info.xml | 0 .../skins/default/xui/ja/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/ja/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/ja/panel_cof_wearables.xml | 0 .../default/xui/ja/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/ja/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/ja/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/ja/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/ja/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/ja/panel_edit_wearable.xml | 0 .../skins/default/xui/ja/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/ja/panel_group_general.xml | 0 .../skins/default/xui/ja/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/ja/panel_group_invite.xml | 0 .../newview/skins/default/xui/ja/panel_group_land_money.xml | 0 .../newview/skins/default/xui/ja/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/ja/panel_group_notices.xml | 0 indra/newview/skins/default/xui/ja/panel_group_notify.xml | 0 indra/newview/skins/default/xui/ja/panel_group_roles.xml | 0 .../newview/skins/default/xui/ja/panel_im_control_panel.xml | 0 .../newview/skins/default/xui/ja/panel_instant_message.xml | 0 indra/newview/skins/default/xui/ja/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/ja/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/ja/panel_landmarks.xml | 0 indra/newview/skins/default/xui/ja/panel_login.xml | 0 indra/newview/skins/default/xui/ja/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/ja/panel_me.xml | 0 .../skins/default/xui/ja/panel_media_settings_general.xml | 0 .../default/xui/ja/panel_media_settings_permissions.xml | 0 .../skins/default/xui/ja/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/ja/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/ja/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/ja/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/ja/panel_nearby_media.xml | 0 .../skins/default/xui/ja/panel_notifications_channel.xml | 0 indra/newview/skins/default/xui/ja/panel_notify_textbox.xml | 0 .../skins/default/xui/ja/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/ja/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/ja/panel_outfit_edit.xml | 0 .../skins/default/xui/ja/panel_outfits_inventory.xml | 0 .../default/xui/ja/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/ja/panel_outfits_list.xml | 0 .../newview/skins/default/xui/ja/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/ja/panel_people.xml | 0 indra/newview/skins/default/xui/ja/panel_pick_info.xml | 0 indra/newview/skins/default/xui/ja/panel_picks.xml | 0 indra/newview/skins/default/xui/ja/panel_place_profile.xml | 0 indra/newview/skins/default/xui/ja/panel_places.xml | 0 .../newview/skins/default/xui/ja/panel_postcard_message.xml | 0 .../skins/default/xui/ja/panel_postcard_settings.xml | 0 .../skins/default/xui/ja/panel_preferences_advanced.xml | 0 .../skins/default/xui/ja/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/ja/panel_preferences_chat.xml | 0 .../skins/default/xui/ja/panel_preferences_colors.xml | 0 .../skins/default/xui/ja/panel_preferences_general.xml | 0 .../skins/default/xui/ja/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/ja/panel_preferences_move.xml | 0 .../skins/default/xui/ja/panel_preferences_privacy.xml | 0 .../skins/default/xui/ja/panel_preferences_setup.xml | 0 .../skins/default/xui/ja/panel_preferences_sound.xml | 0 .../skins/default/xui/ja/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/ja/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/ja/panel_region_debug.xml | 0 .../skins/default/xui/ja/panel_region_environment.xml | 0 indra/newview/skins/default/xui/ja/panel_region_estate.xml | 0 indra/newview/skins/default/xui/ja/panel_region_general.xml | 0 indra/newview/skins/default/xui/ja/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/ja/panel_script_ed.xml | 0 .../skins/default/xui/ja/panel_script_limits_my_avatar.xml | 0 .../default/xui/ja/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/ja/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/ja/panel_scrolling_param.xml | 0 .../skins/default/xui/ja/panel_scrolling_param_base.xml | 0 .../skins/default/xui/ja/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/ja/panel_sidetray_home_tab.xml | 0 .../skins/default/xui/ja/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/ja/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/ja/panel_snapshot_options.xml | 0 .../skins/default/xui/ja/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/ja/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/ja/panel_sound_devices.xml | 0 .../skins/default/xui/ja/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/ja/panel_status_bar.xml | 0 indra/newview/skins/default/xui/ja/panel_sys_well_item.xml | 0 .../newview/skins/default/xui/ja/panel_teleport_history.xml | 0 .../skins/default/xui/ja/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/ja/panel_voice_effect.xml | 0 .../newview/skins/default/xui/ja/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/ja/panel_world_map.xml | 0 indra/newview/skins/default/xui/ja/role_actions.xml | 0 indra/newview/skins/default/xui/ja/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/ja/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/ja/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/ja/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/ja/strings.xml | 0 indra/newview/skins/default/xui/ja/teleport_strings.xml | 0 indra/newview/skins/default/xui/ja/xui_version.xml | 0 indra/newview/skins/default/xui/pl/floater_about.xml | 0 indra/newview/skins/default/xui/pl/floater_about_land.xml | 0 indra/newview/skins/default/xui/pl/floater_activeim.xml | 0 .../skins/default/xui/pl/floater_animation_preview.xml | 0 indra/newview/skins/default/xui/pl/floater_auction.xml | 0 .../newview/skins/default/xui/pl/floater_avatar_picker.xml | 0 .../skins/default/xui/pl/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/pl/floater_beacons.xml | 0 .../newview/skins/default/xui/pl/floater_build_options.xml | 0 indra/newview/skins/default/xui/pl/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/pl/floater_bumps.xml | 0 indra/newview/skins/default/xui/pl/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/pl/floater_buy_currency.xml | 0 .../skins/default/xui/pl/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/pl/floater_buy_land.xml | 0 indra/newview/skins/default/xui/pl/floater_buy_object.xml | 0 indra/newview/skins/default/xui/pl/floater_camera.xml | 0 indra/newview/skins/default/xui/pl/floater_choose_group.xml | 0 indra/newview/skins/default/xui/pl/floater_color_picker.xml | 0 indra/newview/skins/default/xui/pl/floater_critical.xml | 0 indra/newview/skins/default/xui/pl/floater_display_name.xml | 0 indra/newview/skins/default/xui/pl/floater_event.xml | 0 indra/newview/skins/default/xui/pl/floater_font_test.xml | 0 indra/newview/skins/default/xui/pl/floater_gesture.xml | 0 indra/newview/skins/default/xui/pl/floater_god_tools.xml | 0 .../skins/default/xui/pl/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/pl/floater_help_browser.xml | 0 indra/newview/skins/default/xui/pl/floater_hud.xml | 0 indra/newview/skins/default/xui/pl/floater_im_container.xml | 0 indra/newview/skins/default/xui/pl/floater_im_session.xml | 0 .../newview/skins/default/xui/pl/floater_image_preview.xml | 0 .../newview/skins/default/xui/pl/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/pl/floater_inspect.xml | 0 indra/newview/skins/default/xui/pl/floater_inventory.xml | 0 .../default/xui/pl/floater_inventory_item_properties.xml | 0 .../skins/default/xui/pl/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/pl/floater_joystick.xml | 0 indra/newview/skins/default/xui/pl/floater_lagmeter.xml | 0 .../newview/skins/default/xui/pl/floater_land_holdings.xml | 0 .../newview/skins/default/xui/pl/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/pl/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/pl/floater_map.xml | 0 .../newview/skins/default/xui/pl/floater_media_browser.xml | 0 .../newview/skins/default/xui/pl/floater_media_settings.xml | 0 indra/newview/skins/default/xui/pl/floater_mem_leaking.xml | 0 indra/newview/skins/default/xui/pl/floater_moveview.xml | 0 indra/newview/skins/default/xui/pl/floater_mute_object.xml | 0 indra/newview/skins/default/xui/pl/floater_nearby_chat.xml | 0 indra/newview/skins/default/xui/pl/floater_openobject.xml | 0 .../newview/skins/default/xui/pl/floater_outgoing_call.xml | 0 indra/newview/skins/default/xui/pl/floater_pay.xml | 0 indra/newview/skins/default/xui/pl/floater_pay_object.xml | 0 indra/newview/skins/default/xui/pl/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/pl/floater_post_process.xml | 0 indra/newview/skins/default/xui/pl/floater_postcard.xml | 0 indra/newview/skins/default/xui/pl/floater_preferences.xml | 0 .../skins/default/xui/pl/floater_preview_animation.xml | 0 .../skins/default/xui/pl/floater_preview_gesture.xml | 0 .../skins/default/xui/pl/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/pl/floater_preview_sound.xml | 0 .../skins/default/xui/pl/floater_preview_texture.xml | 0 .../skins/default/xui/pl/floater_publish_classified.xml | 0 .../skins/default/xui/pl/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/pl/floater_region_info.xml | 0 indra/newview/skins/default/xui/pl/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/pl/floater_script_debug.xml | 0 .../skins/default/xui/pl/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/pl/floater_script_limits.xml | 0 .../newview/skins/default/xui/pl/floater_script_preview.xml | 0 indra/newview/skins/default/xui/pl/floater_script_queue.xml | 0 .../newview/skins/default/xui/pl/floater_script_search.xml | 0 indra/newview/skins/default/xui/pl/floater_search.xml | 0 indra/newview/skins/default/xui/pl/floater_select_key.xml | 0 indra/newview/skins/default/xui/pl/floater_sell_land.xml | 0 .../newview/skins/default/xui/pl/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/pl/floater_snapshot.xml | 0 .../newview/skins/default/xui/pl/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/pl/floater_stats.xml | 0 indra/newview/skins/default/xui/pl/floater_sys_well.xml | 0 indra/newview/skins/default/xui/pl/floater_telehub.xml | 0 indra/newview/skins/default/xui/pl/floater_texture_ctrl.xml | 0 indra/newview/skins/default/xui/pl/floater_tools.xml | 0 indra/newview/skins/default/xui/pl/floater_top_objects.xml | 0 indra/newview/skins/default/xui/pl/floater_tos.xml | 0 indra/newview/skins/default/xui/pl/floater_url_entry.xml | 0 .../newview/skins/default/xui/pl/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/pl/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/pl/floater_web_content.xml | 0 .../skins/default/xui/pl/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/pl/floater_window_size.xml | 0 indra/newview/skins/default/xui/pl/floater_world_map.xml | 0 indra/newview/skins/default/xui/pl/inspect_avatar.xml | 0 indra/newview/skins/default/xui/pl/inspect_group.xml | 0 indra/newview/skins/default/xui/pl/inspect_object.xml | 0 .../newview/skins/default/xui/pl/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/pl/language_settings.xml | 0 .../newview/skins/default/xui/pl/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/pl/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/pl/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/pl/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/pl/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/pl/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/pl/menu_bottomtray.xml | 0 indra/newview/skins/default/xui/pl/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/pl/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/pl/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/pl/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/pl/menu_edit.xml | 0 indra/newview/skins/default/xui/pl/menu_favorites.xml | 0 indra/newview/skins/default/xui/pl/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/pl/menu_group_plus.xml | 0 indra/newview/skins/default/xui/pl/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/pl/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/pl/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/pl/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/pl/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/pl/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/pl/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/pl/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/pl/menu_inventory.xml | 0 indra/newview/skins/default/xui/pl/menu_inventory_add.xml | 0 .../skins/default/xui/pl/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/pl/menu_land.xml | 0 indra/newview/skins/default/xui/pl/menu_landmark.xml | 0 indra/newview/skins/default/xui/pl/menu_login.xml | 0 indra/newview/skins/default/xui/pl/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/pl/menu_mini_map.xml | 0 indra/newview/skins/default/xui/pl/menu_navbar.xml | 0 indra/newview/skins/default/xui/pl/menu_nearby_chat.xml | 0 .../skins/default/xui/pl/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/pl/menu_object.xml | 0 indra/newview/skins/default/xui/pl/menu_object_icon.xml | 0 indra/newview/skins/default/xui/pl/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/pl/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/pl/menu_participant_list.xml | 0 .../skins/default/xui/pl/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/pl/menu_people_groups.xml | 0 .../skins/default/xui/pl/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/pl/menu_people_nearby.xml | 0 .../skins/default/xui/pl/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/pl/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/pl/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/pl/menu_picks.xml | 0 indra/newview/skins/default/xui/pl/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/pl/menu_place.xml | 0 .../newview/skins/default/xui/pl/menu_place_add_button.xml | 0 .../skins/default/xui/pl/menu_places_gear_folder.xml | 0 .../skins/default/xui/pl/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/pl/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/pl/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/pl/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/pl/menu_slurl.xml | 0 .../skins/default/xui/pl/menu_teleport_history_gear.xml | 0 .../skins/default/xui/pl/menu_teleport_history_item.xml | 0 .../skins/default/xui/pl/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/pl/menu_text_editor.xml | 0 indra/newview/skins/default/xui/pl/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/pl/menu_url_agent.xml | 0 indra/newview/skins/default/xui/pl/menu_url_group.xml | 0 indra/newview/skins/default/xui/pl/menu_url_http.xml | 0 indra/newview/skins/default/xui/pl/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/pl/menu_url_map.xml | 0 indra/newview/skins/default/xui/pl/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/pl/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/pl/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/pl/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/pl/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/pl/menu_viewer.xml | 0 .../skins/default/xui/pl/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/pl/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/pl/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/pl/mime_types.xml | 0 indra/newview/skins/default/xui/pl/mime_types_linux.xml | 0 indra/newview/skins/default/xui/pl/mime_types_mac.xml | 0 indra/newview/skins/default/xui/pl/notifications.xml | 0 indra/newview/skins/default/xui/pl/outfit_accordion_tab.xml | 0 .../skins/default/xui/pl/panel_active_object_row.xml | 0 .../skins/default/xui/pl/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/pl/panel_avatar_list_item.xml | 0 .../skins/default/xui/pl/panel_block_list_sidetray.xml | 0 .../skins/default/xui/pl/panel_body_parts_list_item.xml | 0 .../default/xui/pl/panel_bodyparts_list_button_bar.xml | 0 indra/newview/skins/default/xui/pl/panel_bottomtray.xml | 0 .../newview/skins/default/xui/pl/panel_bottomtray_lite.xml | 0 .../newview/skins/default/xui/pl/panel_classified_info.xml | 0 .../skins/default/xui/pl/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/pl/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/pl/panel_cof_wearables.xml | 0 .../default/xui/pl/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/pl/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/pl/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/pl/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/pl/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/pl/panel_edit_wearable.xml | 0 .../skins/default/xui/pl/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/pl/panel_group_general.xml | 0 .../skins/default/xui/pl/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/pl/panel_group_invite.xml | 0 .../newview/skins/default/xui/pl/panel_group_land_money.xml | 0 .../newview/skins/default/xui/pl/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/pl/panel_group_notices.xml | 0 indra/newview/skins/default/xui/pl/panel_group_notify.xml | 0 indra/newview/skins/default/xui/pl/panel_group_roles.xml | 0 .../newview/skins/default/xui/pl/panel_im_control_panel.xml | 0 indra/newview/skins/default/xui/pl/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/pl/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/pl/panel_landmarks.xml | 0 indra/newview/skins/default/xui/pl/panel_login.xml | 0 indra/newview/skins/default/xui/pl/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/pl/panel_me.xml | 0 .../skins/default/xui/pl/panel_media_settings_general.xml | 0 .../default/xui/pl/panel_media_settings_permissions.xml | 0 .../skins/default/xui/pl/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/pl/panel_navigation_bar.xml | 0 .../newview/skins/default/xui/pl/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/pl/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/pl/panel_notify_textbox.xml | 0 .../skins/default/xui/pl/panel_online_status_toast.xml | 0 indra/newview/skins/default/xui/pl/panel_outfit_edit.xml | 0 .../skins/default/xui/pl/panel_outfits_inventory.xml | 0 .../default/xui/pl/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/pl/panel_outfits_list.xml | 0 .../newview/skins/default/xui/pl/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/pl/panel_people.xml | 0 indra/newview/skins/default/xui/pl/panel_pick_info.xml | 0 indra/newview/skins/default/xui/pl/panel_picks.xml | 0 indra/newview/skins/default/xui/pl/panel_place_profile.xml | 0 indra/newview/skins/default/xui/pl/panel_places.xml | 0 .../skins/default/xui/pl/panel_preferences_advanced.xml | 0 .../skins/default/xui/pl/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/pl/panel_preferences_chat.xml | 0 .../skins/default/xui/pl/panel_preferences_colors.xml | 0 .../skins/default/xui/pl/panel_preferences_general.xml | 0 .../skins/default/xui/pl/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/pl/panel_preferences_move.xml | 0 .../skins/default/xui/pl/panel_preferences_privacy.xml | 0 .../skins/default/xui/pl/panel_preferences_setup.xml | 0 .../skins/default/xui/pl/panel_preferences_sound.xml | 0 .../skins/default/xui/pl/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/pl/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/pl/panel_region_debug.xml | 0 indra/newview/skins/default/xui/pl/panel_region_estate.xml | 0 indra/newview/skins/default/xui/pl/panel_region_general.xml | 0 indra/newview/skins/default/xui/pl/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/pl/panel_region_texture.xml | 0 indra/newview/skins/default/xui/pl/panel_script_ed.xml | 0 .../skins/default/xui/pl/panel_script_limits_my_avatar.xml | 0 .../default/xui/pl/panel_script_limits_region_memory.xml | 0 .../newview/skins/default/xui/pl/panel_scrolling_param.xml | 0 .../skins/default/xui/pl/panel_scrolling_param_base.xml | 0 indra/newview/skins/default/xui/pl/panel_side_tray.xml | 0 .../skins/default/xui/pl/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/pl/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/pl/panel_status_bar.xml | 0 .../newview/skins/default/xui/pl/panel_teleport_history.xml | 0 .../skins/default/xui/pl/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/pl/panel_voice_effect.xml | 0 .../newview/skins/default/xui/pl/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/pl/panel_world_map.xml | 0 indra/newview/skins/default/xui/pl/role_actions.xml | 0 indra/newview/skins/default/xui/pl/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/pl/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/pl/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/pl/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/pl/strings.xml | 0 indra/newview/skins/default/xui/pl/teleport_strings.xml | 0 indra/newview/skins/default/xui/pl/xui_version.xml | 0 indra/newview/skins/default/xui/pt/floater_about.xml | 0 indra/newview/skins/default/xui/pt/floater_about_land.xml | 0 indra/newview/skins/default/xui/pt/floater_activeim.xml | 0 .../skins/default/xui/pt/floater_animation_anim_preview.xml | 0 .../skins/default/xui/pt/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/pt/floater_auction.xml | 0 indra/newview/skins/default/xui/pt/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/pt/floater_avatar.xml | 0 .../newview/skins/default/xui/pt/floater_avatar_picker.xml | 0 .../skins/default/xui/pt/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/pt/floater_beacons.xml | 0 .../newview/skins/default/xui/pt/floater_build_options.xml | 0 indra/newview/skins/default/xui/pt/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/pt/floater_bumps.xml | 0 indra/newview/skins/default/xui/pt/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/pt/floater_buy_currency.xml | 0 .../skins/default/xui/pt/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/pt/floater_buy_land.xml | 0 indra/newview/skins/default/xui/pt/floater_buy_object.xml | 0 indra/newview/skins/default/xui/pt/floater_camera.xml | 0 indra/newview/skins/default/xui/pt/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/pt/floater_choose_group.xml | 0 indra/newview/skins/default/xui/pt/floater_color_picker.xml | 0 indra/newview/skins/default/xui/pt/floater_critical.xml | 0 .../skins/default/xui/pt/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/pt/floater_destinations.xml | 0 indra/newview/skins/default/xui/pt/floater_display_name.xml | 0 .../newview/skins/default/xui/pt/floater_edit_day_cycle.xml | 0 .../skins/default/xui/pt/floater_edit_sky_preset.xml | 0 .../skins/default/xui/pt/floater_edit_water_preset.xml | 0 .../skins/default/xui/pt/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/pt/floater_event.xml | 0 indra/newview/skins/default/xui/pt/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/pt/floater_font_test.xml | 0 indra/newview/skins/default/xui/pt/floater_gesture.xml | 0 indra/newview/skins/default/xui/pt/floater_god_tools.xml | 0 .../skins/default/xui/pt/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/pt/floater_help_browser.xml | 0 indra/newview/skins/default/xui/pt/floater_how_to.xml | 0 indra/newview/skins/default/xui/pt/floater_hud.xml | 0 indra/newview/skins/default/xui/pt/floater_im_container.xml | 0 indra/newview/skins/default/xui/pt/floater_im_session.xml | 0 .../newview/skins/default/xui/pt/floater_image_preview.xml | 0 .../newview/skins/default/xui/pt/floater_import_collada.xml | 0 .../newview/skins/default/xui/pt/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/pt/floater_inspect.xml | 0 .../default/xui/pt/floater_inventory_item_properties.xml | 0 .../skins/default/xui/pt/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/pt/floater_joystick.xml | 0 indra/newview/skins/default/xui/pt/floater_lagmeter.xml | 0 .../newview/skins/default/xui/pt/floater_land_holdings.xml | 0 .../newview/skins/default/xui/pt/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/pt/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/pt/floater_map.xml | 0 .../newview/skins/default/xui/pt/floater_media_browser.xml | 0 .../newview/skins/default/xui/pt/floater_media_settings.xml | 0 indra/newview/skins/default/xui/pt/floater_mem_leaking.xml | 0 .../skins/default/xui/pt/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/pt/floater_model_preview.xml | 0 indra/newview/skins/default/xui/pt/floater_moveview.xml | 0 indra/newview/skins/default/xui/pt/floater_mute_object.xml | 0 .../newview/skins/default/xui/pt/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/pt/floater_my_inventory.xml | 0 .../newview/skins/default/xui/pt/floater_object_weights.xml | 0 indra/newview/skins/default/xui/pt/floater_openobject.xml | 0 .../newview/skins/default/xui/pt/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/pt/floater_outgoing_call.xml | 0 .../skins/default/xui/pt/floater_pathfinding_characters.xml | 0 .../skins/default/xui/pt/floater_pathfinding_console.xml | 0 .../skins/default/xui/pt/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/pt/floater_pay.xml | 0 indra/newview/skins/default/xui/pt/floater_pay_object.xml | 0 indra/newview/skins/default/xui/pt/floater_people.xml | 0 indra/newview/skins/default/xui/pt/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/pt/floater_picks.xml | 0 indra/newview/skins/default/xui/pt/floater_places.xml | 0 indra/newview/skins/default/xui/pt/floater_post_process.xml | 0 indra/newview/skins/default/xui/pt/floater_preferences.xml | 0 .../skins/default/xui/pt/floater_preferences_proxy.xml | 0 .../skins/default/xui/pt/floater_preview_animation.xml | 0 .../skins/default/xui/pt/floater_preview_gesture.xml | 0 .../skins/default/xui/pt/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/pt/floater_preview_sound.xml | 0 .../skins/default/xui/pt/floater_preview_texture.xml | 0 .../skins/default/xui/pt/floater_price_for_listing.xml | 0 .../skins/default/xui/pt/floater_publish_classified.xml | 0 .../skins/default/xui/pt/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/pt/floater_region_info.xml | 0 indra/newview/skins/default/xui/pt/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/pt/floater_script_debug.xml | 0 .../skins/default/xui/pt/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/pt/floater_script_limits.xml | 0 .../newview/skins/default/xui/pt/floater_script_preview.xml | 0 indra/newview/skins/default/xui/pt/floater_script_queue.xml | 0 .../newview/skins/default/xui/pt/floater_script_search.xml | 0 indra/newview/skins/default/xui/pt/floater_search.xml | 0 indra/newview/skins/default/xui/pt/floater_select_key.xml | 0 indra/newview/skins/default/xui/pt/floater_sell_land.xml | 0 .../newview/skins/default/xui/pt/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/pt/floater_snapshot.xml | 0 .../newview/skins/default/xui/pt/floater_sound_devices.xml | 0 .../newview/skins/default/xui/pt/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/pt/floater_spellcheck.xml | 0 .../skins/default/xui/pt/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/pt/floater_stats.xml | 0 indra/newview/skins/default/xui/pt/floater_sys_well.xml | 0 indra/newview/skins/default/xui/pt/floater_telehub.xml | 0 .../skins/default/xui/pt/floater_test_layout_stacks.xml | 0 .../default/xui/pt/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/pt/floater_texture_ctrl.xml | 0 .../skins/default/xui/pt/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/pt/floater_tools.xml | 0 indra/newview/skins/default/xui/pt/floater_top_objects.xml | 0 indra/newview/skins/default/xui/pt/floater_tos.xml | 0 indra/newview/skins/default/xui/pt/floater_toybox.xml | 0 .../skins/default/xui/pt/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/pt/floater_url_entry.xml | 0 .../newview/skins/default/xui/pt/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/pt/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/pt/floater_web_content.xml | 0 .../skins/default/xui/pt/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/pt/floater_window_size.xml | 0 indra/newview/skins/default/xui/pt/floater_world_map.xml | 0 indra/newview/skins/default/xui/pt/inspect_avatar.xml | 0 indra/newview/skins/default/xui/pt/inspect_group.xml | 0 indra/newview/skins/default/xui/pt/inspect_object.xml | 0 .../newview/skins/default/xui/pt/inspect_remote_object.xml | 0 indra/newview/skins/default/xui/pt/language_settings.xml | 0 .../newview/skins/default/xui/pt/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/pt/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/pt/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/pt/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/pt/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/pt/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/pt/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/pt/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/pt/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/pt/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/pt/menu_edit.xml | 0 indra/newview/skins/default/xui/pt/menu_favorites.xml | 0 indra/newview/skins/default/xui/pt/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/pt/menu_group_plus.xml | 0 indra/newview/skins/default/xui/pt/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/pt/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/pt/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/pt/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/pt/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/pt/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/pt/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/pt/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/pt/menu_inventory.xml | 0 indra/newview/skins/default/xui/pt/menu_inventory_add.xml | 0 .../skins/default/xui/pt/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/pt/menu_land.xml | 0 indra/newview/skins/default/xui/pt/menu_landmark.xml | 0 indra/newview/skins/default/xui/pt/menu_login.xml | 0 indra/newview/skins/default/xui/pt/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/pt/menu_mini_map.xml | 0 .../skins/default/xui/pt/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/pt/menu_navbar.xml | 0 indra/newview/skins/default/xui/pt/menu_nearby_chat.xml | 0 .../skins/default/xui/pt/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/pt/menu_object.xml | 0 indra/newview/skins/default/xui/pt/menu_object_icon.xml | 0 indra/newview/skins/default/xui/pt/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/pt/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/pt/menu_participant_list.xml | 0 .../skins/default/xui/pt/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/pt/menu_people_groups.xml | 0 .../skins/default/xui/pt/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/pt/menu_people_nearby.xml | 0 .../skins/default/xui/pt/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/pt/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/pt/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/pt/menu_picks.xml | 0 indra/newview/skins/default/xui/pt/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/pt/menu_place.xml | 0 .../newview/skins/default/xui/pt/menu_place_add_button.xml | 0 .../skins/default/xui/pt/menu_places_gear_folder.xml | 0 .../skins/default/xui/pt/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/pt/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/pt/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/pt/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/pt/menu_slurl.xml | 0 .../skins/default/xui/pt/menu_teleport_history_gear.xml | 0 .../skins/default/xui/pt/menu_teleport_history_item.xml | 0 .../skins/default/xui/pt/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/pt/menu_text_editor.xml | 0 indra/newview/skins/default/xui/pt/menu_toolbars.xml | 0 indra/newview/skins/default/xui/pt/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/pt/menu_url_agent.xml | 0 indra/newview/skins/default/xui/pt/menu_url_group.xml | 0 indra/newview/skins/default/xui/pt/menu_url_http.xml | 0 indra/newview/skins/default/xui/pt/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/pt/menu_url_map.xml | 0 indra/newview/skins/default/xui/pt/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/pt/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/pt/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/pt/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/pt/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/pt/menu_viewer.xml | 0 .../skins/default/xui/pt/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/pt/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/pt/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/pt/mime_types.xml | 0 indra/newview/skins/default/xui/pt/mime_types_linux.xml | 0 indra/newview/skins/default/xui/pt/mime_types_mac.xml | 0 indra/newview/skins/default/xui/pt/notifications.xml | 0 indra/newview/skins/default/xui/pt/outfit_accordion_tab.xml | 0 .../skins/default/xui/pt/panel_active_object_row.xml | 0 .../skins/default/xui/pt/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/pt/panel_avatar_list_item.xml | 0 .../skins/default/xui/pt/panel_block_list_sidetray.xml | 0 .../skins/default/xui/pt/panel_body_parts_list_item.xml | 0 .../default/xui/pt/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/pt/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/pt/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/pt/panel_classified_info.xml | 0 .../skins/default/xui/pt/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/pt/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/pt/panel_cof_wearables.xml | 0 .../default/xui/pt/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/pt/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/pt/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/pt/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/pt/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/pt/panel_edit_wearable.xml | 0 .../skins/default/xui/pt/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/pt/panel_group_general.xml | 0 .../skins/default/xui/pt/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/pt/panel_group_invite.xml | 0 .../newview/skins/default/xui/pt/panel_group_land_money.xml | 0 .../newview/skins/default/xui/pt/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/pt/panel_group_notices.xml | 0 indra/newview/skins/default/xui/pt/panel_group_notify.xml | 0 indra/newview/skins/default/xui/pt/panel_group_roles.xml | 0 .../newview/skins/default/xui/pt/panel_im_control_panel.xml | 0 indra/newview/skins/default/xui/pt/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/pt/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/pt/panel_landmarks.xml | 0 indra/newview/skins/default/xui/pt/panel_login.xml | 0 indra/newview/skins/default/xui/pt/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/pt/panel_me.xml | 0 .../skins/default/xui/pt/panel_media_settings_general.xml | 0 .../default/xui/pt/panel_media_settings_permissions.xml | 0 .../skins/default/xui/pt/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/pt/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/pt/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/pt/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/pt/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/pt/panel_notify_textbox.xml | 0 .../skins/default/xui/pt/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/pt/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/pt/panel_outfit_edit.xml | 0 .../skins/default/xui/pt/panel_outfits_inventory.xml | 0 .../default/xui/pt/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/pt/panel_outfits_list.xml | 0 .../newview/skins/default/xui/pt/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/pt/panel_people.xml | 0 indra/newview/skins/default/xui/pt/panel_pick_info.xml | 0 indra/newview/skins/default/xui/pt/panel_picks.xml | 0 indra/newview/skins/default/xui/pt/panel_place_profile.xml | 0 indra/newview/skins/default/xui/pt/panel_places.xml | 0 .../newview/skins/default/xui/pt/panel_postcard_message.xml | 0 .../skins/default/xui/pt/panel_postcard_settings.xml | 0 .../skins/default/xui/pt/panel_preferences_advanced.xml | 0 .../skins/default/xui/pt/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/pt/panel_preferences_chat.xml | 0 .../skins/default/xui/pt/panel_preferences_colors.xml | 0 .../skins/default/xui/pt/panel_preferences_general.xml | 0 .../skins/default/xui/pt/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/pt/panel_preferences_move.xml | 0 .../skins/default/xui/pt/panel_preferences_privacy.xml | 0 .../skins/default/xui/pt/panel_preferences_setup.xml | 0 .../skins/default/xui/pt/panel_preferences_sound.xml | 0 .../skins/default/xui/pt/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/pt/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/pt/panel_region_debug.xml | 0 .../skins/default/xui/pt/panel_region_environment.xml | 0 indra/newview/skins/default/xui/pt/panel_region_estate.xml | 0 indra/newview/skins/default/xui/pt/panel_region_general.xml | 0 indra/newview/skins/default/xui/pt/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/pt/panel_script_ed.xml | 0 .../skins/default/xui/pt/panel_script_limits_my_avatar.xml | 0 .../default/xui/pt/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/pt/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/pt/panel_scrolling_param.xml | 0 .../skins/default/xui/pt/panel_scrolling_param_base.xml | 0 .../skins/default/xui/pt/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/pt/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/pt/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/pt/panel_snapshot_options.xml | 0 .../skins/default/xui/pt/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/pt/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/pt/panel_sound_devices.xml | 0 .../skins/default/xui/pt/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/pt/panel_status_bar.xml | 0 .../newview/skins/default/xui/pt/panel_teleport_history.xml | 0 .../skins/default/xui/pt/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/pt/panel_voice_effect.xml | 0 .../newview/skins/default/xui/pt/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/pt/panel_world_map.xml | 0 indra/newview/skins/default/xui/pt/role_actions.xml | 0 indra/newview/skins/default/xui/pt/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/pt/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/pt/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/pt/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/pt/strings.xml | 0 indra/newview/skins/default/xui/pt/teleport_strings.xml | 0 indra/newview/skins/default/xui/pt/xui_version.xml | 0 indra/newview/skins/default/xui/ru/floater_aaa.xml | 0 indra/newview/skins/default/xui/ru/floater_about.xml | 0 indra/newview/skins/default/xui/ru/floater_about_land.xml | 0 indra/newview/skins/default/xui/ru/floater_activeim.xml | 0 .../skins/default/xui/ru/floater_animation_anim_preview.xml | 0 .../skins/default/xui/ru/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/ru/floater_auction.xml | 0 indra/newview/skins/default/xui/ru/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/ru/floater_avatar.xml | 0 .../newview/skins/default/xui/ru/floater_avatar_picker.xml | 0 .../skins/default/xui/ru/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/ru/floater_beacons.xml | 0 .../newview/skins/default/xui/ru/floater_build_options.xml | 0 indra/newview/skins/default/xui/ru/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/ru/floater_bumps.xml | 0 indra/newview/skins/default/xui/ru/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/ru/floater_buy_currency.xml | 0 .../skins/default/xui/ru/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/ru/floater_buy_land.xml | 0 indra/newview/skins/default/xui/ru/floater_buy_object.xml | 0 indra/newview/skins/default/xui/ru/floater_camera.xml | 0 indra/newview/skins/default/xui/ru/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/ru/floater_choose_group.xml | 0 indra/newview/skins/default/xui/ru/floater_color_picker.xml | 0 indra/newview/skins/default/xui/ru/floater_critical.xml | 0 .../skins/default/xui/ru/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/ru/floater_destinations.xml | 0 indra/newview/skins/default/xui/ru/floater_display_name.xml | 0 .../newview/skins/default/xui/ru/floater_edit_day_cycle.xml | 0 .../skins/default/xui/ru/floater_edit_sky_preset.xml | 0 .../skins/default/xui/ru/floater_edit_water_preset.xml | 0 .../skins/default/xui/ru/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/ru/floater_event.xml | 0 indra/newview/skins/default/xui/ru/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/ru/floater_font_test.xml | 0 indra/newview/skins/default/xui/ru/floater_gesture.xml | 0 indra/newview/skins/default/xui/ru/floater_god_tools.xml | 0 .../skins/default/xui/ru/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/ru/floater_help_browser.xml | 0 indra/newview/skins/default/xui/ru/floater_how_to.xml | 0 indra/newview/skins/default/xui/ru/floater_hud.xml | 0 indra/newview/skins/default/xui/ru/floater_im_container.xml | 0 indra/newview/skins/default/xui/ru/floater_im_session.xml | 0 .../newview/skins/default/xui/ru/floater_image_preview.xml | 0 .../newview/skins/default/xui/ru/floater_import_collada.xml | 0 .../newview/skins/default/xui/ru/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/ru/floater_inspect.xml | 0 .../default/xui/ru/floater_inventory_item_properties.xml | 0 .../skins/default/xui/ru/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/ru/floater_joystick.xml | 0 indra/newview/skins/default/xui/ru/floater_lagmeter.xml | 0 .../newview/skins/default/xui/ru/floater_land_holdings.xml | 0 .../newview/skins/default/xui/ru/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/ru/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/ru/floater_map.xml | 0 .../newview/skins/default/xui/ru/floater_media_browser.xml | 0 .../newview/skins/default/xui/ru/floater_media_settings.xml | 0 indra/newview/skins/default/xui/ru/floater_mem_leaking.xml | 0 .../skins/default/xui/ru/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/ru/floater_model_preview.xml | 0 indra/newview/skins/default/xui/ru/floater_moveview.xml | 0 indra/newview/skins/default/xui/ru/floater_mute_object.xml | 0 .../newview/skins/default/xui/ru/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/ru/floater_my_inventory.xml | 0 indra/newview/skins/default/xui/ru/floater_notification.xml | 0 .../skins/default/xui/ru/floater_notifications_console.xml | 0 .../newview/skins/default/xui/ru/floater_object_weights.xml | 0 indra/newview/skins/default/xui/ru/floater_openobject.xml | 0 .../newview/skins/default/xui/ru/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/ru/floater_outgoing_call.xml | 0 .../skins/default/xui/ru/floater_pathfinding_characters.xml | 0 .../skins/default/xui/ru/floater_pathfinding_console.xml | 0 .../skins/default/xui/ru/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/ru/floater_pay.xml | 0 indra/newview/skins/default/xui/ru/floater_pay_object.xml | 0 indra/newview/skins/default/xui/ru/floater_people.xml | 0 indra/newview/skins/default/xui/ru/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/ru/floater_picks.xml | 0 indra/newview/skins/default/xui/ru/floater_places.xml | 0 indra/newview/skins/default/xui/ru/floater_post_process.xml | 0 indra/newview/skins/default/xui/ru/floater_preferences.xml | 0 .../skins/default/xui/ru/floater_preferences_proxy.xml | 0 .../skins/default/xui/ru/floater_preview_animation.xml | 0 .../skins/default/xui/ru/floater_preview_gesture.xml | 0 .../skins/default/xui/ru/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/ru/floater_preview_sound.xml | 0 .../skins/default/xui/ru/floater_preview_texture.xml | 0 .../skins/default/xui/ru/floater_price_for_listing.xml | 0 .../skins/default/xui/ru/floater_publish_classified.xml | 0 .../skins/default/xui/ru/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/ru/floater_region_info.xml | 0 indra/newview/skins/default/xui/ru/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/ru/floater_script_debug.xml | 0 .../skins/default/xui/ru/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/ru/floater_script_limits.xml | 0 .../newview/skins/default/xui/ru/floater_script_preview.xml | 0 indra/newview/skins/default/xui/ru/floater_script_queue.xml | 0 .../newview/skins/default/xui/ru/floater_script_search.xml | 0 indra/newview/skins/default/xui/ru/floater_search.xml | 0 indra/newview/skins/default/xui/ru/floater_select_key.xml | 0 indra/newview/skins/default/xui/ru/floater_sell_land.xml | 0 .../newview/skins/default/xui/ru/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/ru/floater_snapshot.xml | 0 .../newview/skins/default/xui/ru/floater_sound_devices.xml | 0 .../newview/skins/default/xui/ru/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/ru/floater_spellcheck.xml | 0 .../skins/default/xui/ru/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/ru/floater_stats.xml | 0 indra/newview/skins/default/xui/ru/floater_sys_well.xml | 0 indra/newview/skins/default/xui/ru/floater_telehub.xml | 0 .../skins/default/xui/ru/floater_test_layout_stacks.xml | 0 .../default/xui/ru/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/ru/floater_texture_ctrl.xml | 0 .../skins/default/xui/ru/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/ru/floater_tools.xml | 0 indra/newview/skins/default/xui/ru/floater_top_objects.xml | 0 indra/newview/skins/default/xui/ru/floater_tos.xml | 0 indra/newview/skins/default/xui/ru/floater_toybox.xml | 0 .../skins/default/xui/ru/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/ru/floater_url_entry.xml | 0 .../newview/skins/default/xui/ru/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/ru/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/ru/floater_web_content.xml | 0 .../skins/default/xui/ru/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/ru/floater_window_size.xml | 0 indra/newview/skins/default/xui/ru/floater_world_map.xml | 0 indra/newview/skins/default/xui/ru/inspect_avatar.xml | 0 indra/newview/skins/default/xui/ru/inspect_group.xml | 0 indra/newview/skins/default/xui/ru/inspect_object.xml | 0 .../newview/skins/default/xui/ru/inspect_remote_object.xml | 0 .../newview/skins/default/xui/ru/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/ru/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/ru/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/ru/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/ru/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/ru/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/ru/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/ru/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/ru/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/ru/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/ru/menu_edit.xml | 0 indra/newview/skins/default/xui/ru/menu_favorites.xml | 0 indra/newview/skins/default/xui/ru/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/ru/menu_group_plus.xml | 0 indra/newview/skins/default/xui/ru/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/ru/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/ru/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/ru/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/ru/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/ru/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/ru/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/ru/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/ru/menu_inventory.xml | 0 indra/newview/skins/default/xui/ru/menu_inventory_add.xml | 0 .../skins/default/xui/ru/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/ru/menu_land.xml | 0 indra/newview/skins/default/xui/ru/menu_landmark.xml | 0 indra/newview/skins/default/xui/ru/menu_login.xml | 0 indra/newview/skins/default/xui/ru/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/ru/menu_mini_map.xml | 0 .../skins/default/xui/ru/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/ru/menu_navbar.xml | 0 indra/newview/skins/default/xui/ru/menu_nearby_chat.xml | 0 .../skins/default/xui/ru/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/ru/menu_object.xml | 0 indra/newview/skins/default/xui/ru/menu_object_icon.xml | 0 indra/newview/skins/default/xui/ru/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/ru/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/ru/menu_participant_list.xml | 0 .../skins/default/xui/ru/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/ru/menu_people_groups.xml | 0 .../skins/default/xui/ru/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/ru/menu_people_nearby.xml | 0 .../skins/default/xui/ru/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/ru/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/ru/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/ru/menu_picks.xml | 0 indra/newview/skins/default/xui/ru/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/ru/menu_place.xml | 0 .../newview/skins/default/xui/ru/menu_place_add_button.xml | 0 .../skins/default/xui/ru/menu_places_gear_folder.xml | 0 .../skins/default/xui/ru/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/ru/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/ru/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/ru/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/ru/menu_slurl.xml | 0 .../skins/default/xui/ru/menu_teleport_history_gear.xml | 0 .../skins/default/xui/ru/menu_teleport_history_item.xml | 0 .../skins/default/xui/ru/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/ru/menu_text_editor.xml | 0 indra/newview/skins/default/xui/ru/menu_toolbars.xml | 0 indra/newview/skins/default/xui/ru/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/ru/menu_url_agent.xml | 0 indra/newview/skins/default/xui/ru/menu_url_group.xml | 0 indra/newview/skins/default/xui/ru/menu_url_http.xml | 0 indra/newview/skins/default/xui/ru/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/ru/menu_url_map.xml | 0 indra/newview/skins/default/xui/ru/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/ru/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/ru/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/ru/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/ru/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/ru/menu_viewer.xml | 0 .../skins/default/xui/ru/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/ru/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/ru/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/ru/mime_types.xml | 0 indra/newview/skins/default/xui/ru/mime_types_linux.xml | 0 indra/newview/skins/default/xui/ru/mime_types_mac.xml | 0 indra/newview/skins/default/xui/ru/notifications.xml | 0 .../skins/default/xui/ru/panel_active_object_row.xml | 0 .../skins/default/xui/ru/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/ru/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/ru/panel_avatar_tag.xml | 0 .../skins/default/xui/ru/panel_block_list_sidetray.xml | 0 .../skins/default/xui/ru/panel_body_parts_list_item.xml | 0 .../default/xui/ru/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/ru/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/ru/panel_chat_header.xml | 0 indra/newview/skins/default/xui/ru/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/ru/panel_classified_info.xml | 0 .../skins/default/xui/ru/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/ru/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/ru/panel_cof_wearables.xml | 0 .../default/xui/ru/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/ru/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/ru/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/ru/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/ru/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/ru/panel_edit_wearable.xml | 0 .../skins/default/xui/ru/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/ru/panel_group_general.xml | 0 .../skins/default/xui/ru/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/ru/panel_group_invite.xml | 0 .../newview/skins/default/xui/ru/panel_group_land_money.xml | 0 .../newview/skins/default/xui/ru/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/ru/panel_group_notices.xml | 0 indra/newview/skins/default/xui/ru/panel_group_notify.xml | 0 indra/newview/skins/default/xui/ru/panel_group_roles.xml | 0 .../newview/skins/default/xui/ru/panel_im_control_panel.xml | 0 .../newview/skins/default/xui/ru/panel_instant_message.xml | 0 indra/newview/skins/default/xui/ru/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/ru/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/ru/panel_landmarks.xml | 0 indra/newview/skins/default/xui/ru/panel_login.xml | 0 indra/newview/skins/default/xui/ru/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/ru/panel_me.xml | 0 .../skins/default/xui/ru/panel_media_settings_general.xml | 0 .../default/xui/ru/panel_media_settings_permissions.xml | 0 .../skins/default/xui/ru/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/ru/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/ru/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/ru/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/ru/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/ru/panel_notify_textbox.xml | 0 .../skins/default/xui/ru/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/ru/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/ru/panel_outfit_edit.xml | 0 .../skins/default/xui/ru/panel_outfits_inventory.xml | 0 .../default/xui/ru/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/ru/panel_outfits_list.xml | 0 .../newview/skins/default/xui/ru/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/ru/panel_people.xml | 0 indra/newview/skins/default/xui/ru/panel_pick_info.xml | 0 indra/newview/skins/default/xui/ru/panel_picks.xml | 0 indra/newview/skins/default/xui/ru/panel_place_profile.xml | 0 indra/newview/skins/default/xui/ru/panel_places.xml | 0 .../newview/skins/default/xui/ru/panel_postcard_message.xml | 0 .../skins/default/xui/ru/panel_postcard_settings.xml | 0 .../skins/default/xui/ru/panel_preferences_advanced.xml | 0 .../skins/default/xui/ru/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/ru/panel_preferences_chat.xml | 0 .../skins/default/xui/ru/panel_preferences_colors.xml | 0 .../skins/default/xui/ru/panel_preferences_general.xml | 0 .../skins/default/xui/ru/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/ru/panel_preferences_move.xml | 0 .../skins/default/xui/ru/panel_preferences_privacy.xml | 0 .../skins/default/xui/ru/panel_preferences_setup.xml | 0 .../skins/default/xui/ru/panel_preferences_sound.xml | 0 .../skins/default/xui/ru/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/ru/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/ru/panel_region_debug.xml | 0 .../skins/default/xui/ru/panel_region_environment.xml | 0 indra/newview/skins/default/xui/ru/panel_region_estate.xml | 0 indra/newview/skins/default/xui/ru/panel_region_general.xml | 0 indra/newview/skins/default/xui/ru/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/ru/panel_script_ed.xml | 0 .../skins/default/xui/ru/panel_script_limits_my_avatar.xml | 0 .../default/xui/ru/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/ru/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/ru/panel_scrolling_param.xml | 0 .../skins/default/xui/ru/panel_scrolling_param_base.xml | 0 .../skins/default/xui/ru/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/ru/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/ru/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/ru/panel_snapshot_options.xml | 0 .../skins/default/xui/ru/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/ru/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/ru/panel_sound_devices.xml | 0 .../skins/default/xui/ru/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/ru/panel_status_bar.xml | 0 .../newview/skins/default/xui/ru/panel_teleport_history.xml | 0 .../skins/default/xui/ru/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/ru/panel_voice_effect.xml | 0 .../newview/skins/default/xui/ru/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/ru/panel_world_map.xml | 0 indra/newview/skins/default/xui/ru/role_actions.xml | 0 indra/newview/skins/default/xui/ru/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/ru/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/ru/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/ru/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/ru/strings.xml | 0 indra/newview/skins/default/xui/ru/teleport_strings.xml | 0 indra/newview/skins/default/xui/tr/floater_aaa.xml | 0 indra/newview/skins/default/xui/tr/floater_about.xml | 0 indra/newview/skins/default/xui/tr/floater_about_land.xml | 0 indra/newview/skins/default/xui/tr/floater_activeim.xml | 0 .../skins/default/xui/tr/floater_animation_anim_preview.xml | 0 .../skins/default/xui/tr/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/tr/floater_auction.xml | 0 indra/newview/skins/default/xui/tr/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/tr/floater_avatar.xml | 0 .../newview/skins/default/xui/tr/floater_avatar_picker.xml | 0 .../skins/default/xui/tr/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/tr/floater_beacons.xml | 0 .../newview/skins/default/xui/tr/floater_build_options.xml | 0 indra/newview/skins/default/xui/tr/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/tr/floater_bumps.xml | 0 indra/newview/skins/default/xui/tr/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/tr/floater_buy_currency.xml | 0 .../skins/default/xui/tr/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/tr/floater_buy_land.xml | 0 indra/newview/skins/default/xui/tr/floater_buy_object.xml | 0 indra/newview/skins/default/xui/tr/floater_camera.xml | 0 indra/newview/skins/default/xui/tr/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/tr/floater_choose_group.xml | 0 indra/newview/skins/default/xui/tr/floater_color_picker.xml | 0 indra/newview/skins/default/xui/tr/floater_critical.xml | 0 .../skins/default/xui/tr/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/tr/floater_destinations.xml | 0 indra/newview/skins/default/xui/tr/floater_display_name.xml | 0 .../newview/skins/default/xui/tr/floater_edit_day_cycle.xml | 0 .../skins/default/xui/tr/floater_edit_sky_preset.xml | 0 .../skins/default/xui/tr/floater_edit_water_preset.xml | 0 .../skins/default/xui/tr/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/tr/floater_event.xml | 0 indra/newview/skins/default/xui/tr/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/tr/floater_font_test.xml | 0 indra/newview/skins/default/xui/tr/floater_gesture.xml | 0 indra/newview/skins/default/xui/tr/floater_god_tools.xml | 0 .../skins/default/xui/tr/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/tr/floater_help_browser.xml | 0 indra/newview/skins/default/xui/tr/floater_how_to.xml | 0 indra/newview/skins/default/xui/tr/floater_hud.xml | 0 indra/newview/skins/default/xui/tr/floater_im_container.xml | 0 indra/newview/skins/default/xui/tr/floater_im_session.xml | 0 .../newview/skins/default/xui/tr/floater_image_preview.xml | 0 .../newview/skins/default/xui/tr/floater_import_collada.xml | 0 .../newview/skins/default/xui/tr/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/tr/floater_inspect.xml | 0 .../default/xui/tr/floater_inventory_item_properties.xml | 0 .../skins/default/xui/tr/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/tr/floater_joystick.xml | 0 indra/newview/skins/default/xui/tr/floater_lagmeter.xml | 0 .../newview/skins/default/xui/tr/floater_land_holdings.xml | 0 .../newview/skins/default/xui/tr/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/tr/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/tr/floater_map.xml | 0 .../newview/skins/default/xui/tr/floater_media_browser.xml | 0 .../newview/skins/default/xui/tr/floater_media_settings.xml | 0 indra/newview/skins/default/xui/tr/floater_mem_leaking.xml | 0 .../skins/default/xui/tr/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/tr/floater_model_preview.xml | 0 indra/newview/skins/default/xui/tr/floater_moveview.xml | 0 indra/newview/skins/default/xui/tr/floater_mute_object.xml | 0 .../newview/skins/default/xui/tr/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/tr/floater_my_inventory.xml | 0 indra/newview/skins/default/xui/tr/floater_notification.xml | 0 .../skins/default/xui/tr/floater_notifications_console.xml | 0 .../newview/skins/default/xui/tr/floater_object_weights.xml | 0 indra/newview/skins/default/xui/tr/floater_openobject.xml | 0 .../newview/skins/default/xui/tr/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/tr/floater_outgoing_call.xml | 0 .../skins/default/xui/tr/floater_pathfinding_characters.xml | 0 .../skins/default/xui/tr/floater_pathfinding_console.xml | 0 .../skins/default/xui/tr/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/tr/floater_pay.xml | 0 indra/newview/skins/default/xui/tr/floater_pay_object.xml | 0 indra/newview/skins/default/xui/tr/floater_people.xml | 0 indra/newview/skins/default/xui/tr/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/tr/floater_picks.xml | 0 indra/newview/skins/default/xui/tr/floater_places.xml | 0 indra/newview/skins/default/xui/tr/floater_post_process.xml | 0 indra/newview/skins/default/xui/tr/floater_preferences.xml | 0 .../skins/default/xui/tr/floater_preferences_proxy.xml | 0 .../skins/default/xui/tr/floater_preview_animation.xml | 0 .../skins/default/xui/tr/floater_preview_gesture.xml | 0 .../skins/default/xui/tr/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/tr/floater_preview_sound.xml | 0 .../skins/default/xui/tr/floater_preview_texture.xml | 0 .../skins/default/xui/tr/floater_price_for_listing.xml | 0 .../skins/default/xui/tr/floater_publish_classified.xml | 0 .../skins/default/xui/tr/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/tr/floater_region_info.xml | 0 indra/newview/skins/default/xui/tr/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/tr/floater_script_debug.xml | 0 .../skins/default/xui/tr/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/tr/floater_script_limits.xml | 0 .../newview/skins/default/xui/tr/floater_script_preview.xml | 0 indra/newview/skins/default/xui/tr/floater_script_queue.xml | 0 .../newview/skins/default/xui/tr/floater_script_search.xml | 0 indra/newview/skins/default/xui/tr/floater_search.xml | 0 indra/newview/skins/default/xui/tr/floater_select_key.xml | 0 indra/newview/skins/default/xui/tr/floater_sell_land.xml | 0 .../newview/skins/default/xui/tr/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/tr/floater_snapshot.xml | 0 .../newview/skins/default/xui/tr/floater_sound_devices.xml | 0 .../newview/skins/default/xui/tr/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/tr/floater_spellcheck.xml | 0 .../skins/default/xui/tr/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/tr/floater_stats.xml | 0 indra/newview/skins/default/xui/tr/floater_sys_well.xml | 0 indra/newview/skins/default/xui/tr/floater_telehub.xml | 0 .../skins/default/xui/tr/floater_test_layout_stacks.xml | 0 .../default/xui/tr/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/tr/floater_texture_ctrl.xml | 0 .../skins/default/xui/tr/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/tr/floater_tools.xml | 0 indra/newview/skins/default/xui/tr/floater_top_objects.xml | 0 indra/newview/skins/default/xui/tr/floater_tos.xml | 0 indra/newview/skins/default/xui/tr/floater_toybox.xml | 0 .../skins/default/xui/tr/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/tr/floater_url_entry.xml | 0 .../newview/skins/default/xui/tr/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/tr/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/tr/floater_web_content.xml | 0 .../skins/default/xui/tr/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/tr/floater_window_size.xml | 0 indra/newview/skins/default/xui/tr/floater_world_map.xml | 0 indra/newview/skins/default/xui/tr/inspect_avatar.xml | 0 indra/newview/skins/default/xui/tr/inspect_group.xml | 0 indra/newview/skins/default/xui/tr/inspect_object.xml | 0 .../newview/skins/default/xui/tr/inspect_remote_object.xml | 0 .../newview/skins/default/xui/tr/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/tr/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/tr/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/tr/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/tr/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/tr/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/tr/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/tr/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/tr/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/tr/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/tr/menu_edit.xml | 0 indra/newview/skins/default/xui/tr/menu_favorites.xml | 0 indra/newview/skins/default/xui/tr/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/tr/menu_group_plus.xml | 0 indra/newview/skins/default/xui/tr/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/tr/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/tr/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/tr/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/tr/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/tr/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/tr/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/tr/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/tr/menu_inventory.xml | 0 indra/newview/skins/default/xui/tr/menu_inventory_add.xml | 0 .../skins/default/xui/tr/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/tr/menu_land.xml | 0 indra/newview/skins/default/xui/tr/menu_landmark.xml | 0 indra/newview/skins/default/xui/tr/menu_login.xml | 0 indra/newview/skins/default/xui/tr/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/tr/menu_mini_map.xml | 0 .../skins/default/xui/tr/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/tr/menu_navbar.xml | 0 indra/newview/skins/default/xui/tr/menu_nearby_chat.xml | 0 .../skins/default/xui/tr/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/tr/menu_object.xml | 0 indra/newview/skins/default/xui/tr/menu_object_icon.xml | 0 indra/newview/skins/default/xui/tr/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/tr/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/tr/menu_participant_list.xml | 0 .../skins/default/xui/tr/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/tr/menu_people_groups.xml | 0 .../skins/default/xui/tr/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/tr/menu_people_nearby.xml | 0 .../skins/default/xui/tr/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/tr/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/tr/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/tr/menu_picks.xml | 0 indra/newview/skins/default/xui/tr/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/tr/menu_place.xml | 0 .../newview/skins/default/xui/tr/menu_place_add_button.xml | 0 .../skins/default/xui/tr/menu_places_gear_folder.xml | 0 .../skins/default/xui/tr/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/tr/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/tr/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/tr/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/tr/menu_slurl.xml | 0 .../skins/default/xui/tr/menu_teleport_history_gear.xml | 0 .../skins/default/xui/tr/menu_teleport_history_item.xml | 0 .../skins/default/xui/tr/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/tr/menu_text_editor.xml | 0 indra/newview/skins/default/xui/tr/menu_toolbars.xml | 0 indra/newview/skins/default/xui/tr/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/tr/menu_url_agent.xml | 0 indra/newview/skins/default/xui/tr/menu_url_group.xml | 0 indra/newview/skins/default/xui/tr/menu_url_http.xml | 0 indra/newview/skins/default/xui/tr/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/tr/menu_url_map.xml | 0 indra/newview/skins/default/xui/tr/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/tr/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/tr/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/tr/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/tr/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/tr/menu_viewer.xml | 0 .../skins/default/xui/tr/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/tr/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/tr/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/tr/mime_types.xml | 0 indra/newview/skins/default/xui/tr/mime_types_linux.xml | 0 indra/newview/skins/default/xui/tr/mime_types_mac.xml | 0 indra/newview/skins/default/xui/tr/notifications.xml | 0 .../skins/default/xui/tr/panel_active_object_row.xml | 0 .../skins/default/xui/tr/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/tr/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/tr/panel_avatar_tag.xml | 0 .../skins/default/xui/tr/panel_block_list_sidetray.xml | 0 .../skins/default/xui/tr/panel_body_parts_list_item.xml | 0 .../default/xui/tr/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/tr/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/tr/panel_chat_header.xml | 0 indra/newview/skins/default/xui/tr/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/tr/panel_classified_info.xml | 0 .../skins/default/xui/tr/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/tr/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/tr/panel_cof_wearables.xml | 0 .../default/xui/tr/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/tr/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/tr/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/tr/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/tr/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/tr/panel_edit_wearable.xml | 0 .../skins/default/xui/tr/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/tr/panel_group_general.xml | 0 .../skins/default/xui/tr/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/tr/panel_group_invite.xml | 0 .../newview/skins/default/xui/tr/panel_group_land_money.xml | 0 .../newview/skins/default/xui/tr/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/tr/panel_group_notices.xml | 0 indra/newview/skins/default/xui/tr/panel_group_notify.xml | 0 indra/newview/skins/default/xui/tr/panel_group_roles.xml | 0 .../newview/skins/default/xui/tr/panel_im_control_panel.xml | 0 .../newview/skins/default/xui/tr/panel_instant_message.xml | 0 indra/newview/skins/default/xui/tr/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/tr/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/tr/panel_landmarks.xml | 0 indra/newview/skins/default/xui/tr/panel_login.xml | 0 indra/newview/skins/default/xui/tr/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/tr/panel_me.xml | 0 .../skins/default/xui/tr/panel_media_settings_general.xml | 0 .../default/xui/tr/panel_media_settings_permissions.xml | 0 .../skins/default/xui/tr/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/tr/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/tr/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/tr/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/tr/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/tr/panel_notify_textbox.xml | 0 .../skins/default/xui/tr/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/tr/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/tr/panel_outfit_edit.xml | 0 .../skins/default/xui/tr/panel_outfits_inventory.xml | 0 .../default/xui/tr/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/tr/panel_outfits_list.xml | 0 .../newview/skins/default/xui/tr/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/tr/panel_people.xml | 0 indra/newview/skins/default/xui/tr/panel_pick_info.xml | 0 indra/newview/skins/default/xui/tr/panel_picks.xml | 0 indra/newview/skins/default/xui/tr/panel_place_profile.xml | 0 indra/newview/skins/default/xui/tr/panel_places.xml | 0 .../newview/skins/default/xui/tr/panel_postcard_message.xml | 0 .../skins/default/xui/tr/panel_postcard_settings.xml | 0 .../skins/default/xui/tr/panel_preferences_advanced.xml | 0 .../skins/default/xui/tr/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/tr/panel_preferences_chat.xml | 0 .../skins/default/xui/tr/panel_preferences_colors.xml | 0 .../skins/default/xui/tr/panel_preferences_general.xml | 0 .../skins/default/xui/tr/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/tr/panel_preferences_move.xml | 0 .../skins/default/xui/tr/panel_preferences_privacy.xml | 0 .../skins/default/xui/tr/panel_preferences_setup.xml | 0 .../skins/default/xui/tr/panel_preferences_sound.xml | 0 .../skins/default/xui/tr/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/tr/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/tr/panel_region_debug.xml | 0 .../skins/default/xui/tr/panel_region_environment.xml | 0 indra/newview/skins/default/xui/tr/panel_region_estate.xml | 0 indra/newview/skins/default/xui/tr/panel_region_general.xml | 0 indra/newview/skins/default/xui/tr/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/tr/panel_script_ed.xml | 0 .../skins/default/xui/tr/panel_script_limits_my_avatar.xml | 0 .../default/xui/tr/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/tr/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/tr/panel_scrolling_param.xml | 0 .../skins/default/xui/tr/panel_scrolling_param_base.xml | 0 .../skins/default/xui/tr/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/tr/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/tr/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/tr/panel_snapshot_options.xml | 0 .../skins/default/xui/tr/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/tr/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/tr/panel_sound_devices.xml | 0 .../skins/default/xui/tr/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/tr/panel_status_bar.xml | 0 .../newview/skins/default/xui/tr/panel_teleport_history.xml | 0 .../skins/default/xui/tr/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/tr/panel_voice_effect.xml | 0 .../newview/skins/default/xui/tr/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/tr/panel_world_map.xml | 0 indra/newview/skins/default/xui/tr/role_actions.xml | 0 indra/newview/skins/default/xui/tr/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/tr/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/tr/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/tr/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/tr/strings.xml | 0 indra/newview/skins/default/xui/tr/teleport_strings.xml | 0 indra/newview/skins/default/xui/zh/floater_aaa.xml | 0 indra/newview/skins/default/xui/zh/floater_about.xml | 0 indra/newview/skins/default/xui/zh/floater_about_land.xml | 0 indra/newview/skins/default/xui/zh/floater_activeim.xml | 0 .../skins/default/xui/zh/floater_animation_anim_preview.xml | 0 .../skins/default/xui/zh/floater_animation_bvh_preview.xml | 0 indra/newview/skins/default/xui/zh/floater_auction.xml | 0 indra/newview/skins/default/xui/zh/floater_autoreplace.xml | 0 indra/newview/skins/default/xui/zh/floater_avatar.xml | 0 .../newview/skins/default/xui/zh/floater_avatar_picker.xml | 0 .../skins/default/xui/zh/floater_avatar_textures.xml | 0 indra/newview/skins/default/xui/zh/floater_beacons.xml | 0 .../newview/skins/default/xui/zh/floater_build_options.xml | 0 indra/newview/skins/default/xui/zh/floater_bulk_perms.xml | 0 indra/newview/skins/default/xui/zh/floater_bumps.xml | 0 indra/newview/skins/default/xui/zh/floater_buy_contents.xml | 0 indra/newview/skins/default/xui/zh/floater_buy_currency.xml | 0 .../skins/default/xui/zh/floater_buy_currency_html.xml | 0 indra/newview/skins/default/xui/zh/floater_buy_land.xml | 0 indra/newview/skins/default/xui/zh/floater_buy_object.xml | 0 indra/newview/skins/default/xui/zh/floater_camera.xml | 0 indra/newview/skins/default/xui/zh/floater_chat_bar.xml | 0 indra/newview/skins/default/xui/zh/floater_choose_group.xml | 0 indra/newview/skins/default/xui/zh/floater_color_picker.xml | 0 indra/newview/skins/default/xui/zh/floater_critical.xml | 0 .../skins/default/xui/zh/floater_delete_env_preset.xml | 0 indra/newview/skins/default/xui/zh/floater_destinations.xml | 0 indra/newview/skins/default/xui/zh/floater_display_name.xml | 0 .../newview/skins/default/xui/zh/floater_edit_day_cycle.xml | 0 .../skins/default/xui/zh/floater_edit_sky_preset.xml | 0 .../skins/default/xui/zh/floater_edit_water_preset.xml | 0 .../skins/default/xui/zh/floater_environment_settings.xml | 0 indra/newview/skins/default/xui/zh/floater_event.xml | 0 indra/newview/skins/default/xui/zh/floater_fast_timers.xml | 0 indra/newview/skins/default/xui/zh/floater_font_test.xml | 0 indra/newview/skins/default/xui/zh/floater_gesture.xml | 0 indra/newview/skins/default/xui/zh/floater_god_tools.xml | 0 .../skins/default/xui/zh/floater_hardware_settings.xml | 0 indra/newview/skins/default/xui/zh/floater_help_browser.xml | 0 indra/newview/skins/default/xui/zh/floater_how_to.xml | 0 indra/newview/skins/default/xui/zh/floater_hud.xml | 0 indra/newview/skins/default/xui/zh/floater_im_container.xml | 0 indra/newview/skins/default/xui/zh/floater_im_session.xml | 0 .../newview/skins/default/xui/zh/floater_image_preview.xml | 0 .../newview/skins/default/xui/zh/floater_import_collada.xml | 0 .../newview/skins/default/xui/zh/floater_incoming_call.xml | 0 indra/newview/skins/default/xui/zh/floater_inspect.xml | 0 .../default/xui/zh/floater_inventory_item_properties.xml | 0 .../skins/default/xui/zh/floater_inventory_view_finder.xml | 0 indra/newview/skins/default/xui/zh/floater_joystick.xml | 0 indra/newview/skins/default/xui/zh/floater_lagmeter.xml | 0 .../newview/skins/default/xui/zh/floater_land_holdings.xml | 0 .../newview/skins/default/xui/zh/floater_live_lsleditor.xml | 0 indra/newview/skins/default/xui/zh/floater_lsl_guide.xml | 0 indra/newview/skins/default/xui/zh/floater_map.xml | 0 .../newview/skins/default/xui/zh/floater_media_browser.xml | 0 .../newview/skins/default/xui/zh/floater_media_settings.xml | 0 indra/newview/skins/default/xui/zh/floater_mem_leaking.xml | 0 .../skins/default/xui/zh/floater_merchant_outbox.xml | 0 .../newview/skins/default/xui/zh/floater_model_preview.xml | 0 indra/newview/skins/default/xui/zh/floater_moveview.xml | 0 indra/newview/skins/default/xui/zh/floater_mute_object.xml | 0 .../newview/skins/default/xui/zh/floater_my_appearance.xml | 0 indra/newview/skins/default/xui/zh/floater_my_inventory.xml | 0 indra/newview/skins/default/xui/zh/floater_notification.xml | 0 .../skins/default/xui/zh/floater_notifications_console.xml | 0 .../newview/skins/default/xui/zh/floater_object_weights.xml | 0 indra/newview/skins/default/xui/zh/floater_openobject.xml | 0 .../newview/skins/default/xui/zh/floater_outfit_save_as.xml | 0 .../newview/skins/default/xui/zh/floater_outgoing_call.xml | 0 .../skins/default/xui/zh/floater_pathfinding_characters.xml | 0 .../skins/default/xui/zh/floater_pathfinding_console.xml | 0 .../skins/default/xui/zh/floater_pathfinding_linksets.xml | 0 indra/newview/skins/default/xui/zh/floater_pay.xml | 0 indra/newview/skins/default/xui/zh/floater_pay_object.xml | 0 indra/newview/skins/default/xui/zh/floater_people.xml | 0 indra/newview/skins/default/xui/zh/floater_perm_prefs.xml | 0 indra/newview/skins/default/xui/zh/floater_picks.xml | 0 indra/newview/skins/default/xui/zh/floater_places.xml | 0 indra/newview/skins/default/xui/zh/floater_post_process.xml | 0 indra/newview/skins/default/xui/zh/floater_preferences.xml | 0 .../skins/default/xui/zh/floater_preferences_proxy.xml | 0 .../skins/default/xui/zh/floater_preview_animation.xml | 0 .../skins/default/xui/zh/floater_preview_gesture.xml | 0 .../skins/default/xui/zh/floater_preview_notecard.xml | 0 .../newview/skins/default/xui/zh/floater_preview_sound.xml | 0 .../skins/default/xui/zh/floater_preview_texture.xml | 0 .../skins/default/xui/zh/floater_price_for_listing.xml | 0 .../skins/default/xui/zh/floater_publish_classified.xml | 0 .../skins/default/xui/zh/floater_region_debug_console.xml | 0 indra/newview/skins/default/xui/zh/floater_region_info.xml | 0 indra/newview/skins/default/xui/zh/floater_report_abuse.xml | 0 indra/newview/skins/default/xui/zh/floater_script_debug.xml | 0 .../skins/default/xui/zh/floater_script_debug_panel.xml | 0 .../newview/skins/default/xui/zh/floater_script_limits.xml | 0 .../newview/skins/default/xui/zh/floater_script_preview.xml | 0 indra/newview/skins/default/xui/zh/floater_script_queue.xml | 0 .../newview/skins/default/xui/zh/floater_script_search.xml | 0 indra/newview/skins/default/xui/zh/floater_search.xml | 0 indra/newview/skins/default/xui/zh/floater_select_key.xml | 0 indra/newview/skins/default/xui/zh/floater_sell_land.xml | 0 .../newview/skins/default/xui/zh/floater_settings_debug.xml | 0 indra/newview/skins/default/xui/zh/floater_snapshot.xml | 0 .../newview/skins/default/xui/zh/floater_sound_devices.xml | 0 .../newview/skins/default/xui/zh/floater_sound_preview.xml | 0 indra/newview/skins/default/xui/zh/floater_spellcheck.xml | 0 .../skins/default/xui/zh/floater_spellcheck_import.xml | 0 indra/newview/skins/default/xui/zh/floater_stats.xml | 0 indra/newview/skins/default/xui/zh/floater_sys_well.xml | 0 indra/newview/skins/default/xui/zh/floater_telehub.xml | 0 .../skins/default/xui/zh/floater_test_layout_stacks.xml | 0 .../default/xui/zh/floater_test_text_vertical_aligment.xml | 0 indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml | 0 .../skins/default/xui/zh/floater_texture_fetch_debugger.xml | 0 indra/newview/skins/default/xui/zh/floater_tools.xml | 0 indra/newview/skins/default/xui/zh/floater_top_objects.xml | 0 indra/newview/skins/default/xui/zh/floater_tos.xml | 0 indra/newview/skins/default/xui/zh/floater_toybox.xml | 0 .../skins/default/xui/zh/floater_translation_settings.xml | 0 indra/newview/skins/default/xui/zh/floater_url_entry.xml | 0 .../newview/skins/default/xui/zh/floater_voice_controls.xml | 0 indra/newview/skins/default/xui/zh/floater_voice_effect.xml | 0 indra/newview/skins/default/xui/zh/floater_web_content.xml | 0 .../skins/default/xui/zh/floater_whitelist_entry.xml | 0 indra/newview/skins/default/xui/zh/floater_window_size.xml | 0 indra/newview/skins/default/xui/zh/floater_world_map.xml | 0 indra/newview/skins/default/xui/zh/inspect_avatar.xml | 0 indra/newview/skins/default/xui/zh/inspect_group.xml | 0 indra/newview/skins/default/xui/zh/inspect_object.xml | 0 .../newview/skins/default/xui/zh/inspect_remote_object.xml | 0 .../newview/skins/default/xui/zh/menu_add_wearable_gear.xml | 0 .../newview/skins/default/xui/zh/menu_attachment_other.xml | 0 indra/newview/skins/default/xui/zh/menu_attachment_self.xml | 0 indra/newview/skins/default/xui/zh/menu_avatar_icon.xml | 0 indra/newview/skins/default/xui/zh/menu_avatar_other.xml | 0 indra/newview/skins/default/xui/zh/menu_avatar_self.xml | 0 indra/newview/skins/default/xui/zh/menu_cof_attachment.xml | 0 indra/newview/skins/default/xui/zh/menu_cof_body_part.xml | 0 indra/newview/skins/default/xui/zh/menu_cof_clothing.xml | 0 indra/newview/skins/default/xui/zh/menu_cof_gear.xml | 0 indra/newview/skins/default/xui/zh/menu_edit.xml | 0 indra/newview/skins/default/xui/zh/menu_favorites.xml | 0 indra/newview/skins/default/xui/zh/menu_gesture_gear.xml | 0 indra/newview/skins/default/xui/zh/menu_group_plus.xml | 0 indra/newview/skins/default/xui/zh/menu_hide_navbar.xml | 0 indra/newview/skins/default/xui/zh/menu_imchiclet_adhoc.xml | 0 indra/newview/skins/default/xui/zh/menu_imchiclet_group.xml | 0 indra/newview/skins/default/xui/zh/menu_imchiclet_p2p.xml | 0 .../skins/default/xui/zh/menu_inspect_avatar_gear.xml | 0 .../skins/default/xui/zh/menu_inspect_object_gear.xml | 0 .../newview/skins/default/xui/zh/menu_inspect_self_gear.xml | 0 .../newview/skins/default/xui/zh/menu_inv_offer_chiclet.xml | 0 indra/newview/skins/default/xui/zh/menu_inventory.xml | 0 indra/newview/skins/default/xui/zh/menu_inventory_add.xml | 0 .../skins/default/xui/zh/menu_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/zh/menu_land.xml | 0 indra/newview/skins/default/xui/zh/menu_landmark.xml | 0 indra/newview/skins/default/xui/zh/menu_login.xml | 0 indra/newview/skins/default/xui/zh/menu_media_ctrl.xml | 0 indra/newview/skins/default/xui/zh/menu_mini_map.xml | 0 .../skins/default/xui/zh/menu_model_import_gear_default.xml | 0 indra/newview/skins/default/xui/zh/menu_navbar.xml | 0 indra/newview/skins/default/xui/zh/menu_nearby_chat.xml | 0 .../skins/default/xui/zh/menu_notification_well_button.xml | 0 indra/newview/skins/default/xui/zh/menu_object.xml | 0 indra/newview/skins/default/xui/zh/menu_object_icon.xml | 0 indra/newview/skins/default/xui/zh/menu_outfit_gear.xml | 0 indra/newview/skins/default/xui/zh/menu_outfit_tab.xml | 0 .../newview/skins/default/xui/zh/menu_participant_list.xml | 0 .../skins/default/xui/zh/menu_people_friends_view_sort.xml | 0 indra/newview/skins/default/xui/zh/menu_people_groups.xml | 0 .../skins/default/xui/zh/menu_people_groups_view_sort.xml | 0 indra/newview/skins/default/xui/zh/menu_people_nearby.xml | 0 .../skins/default/xui/zh/menu_people_nearby_multiselect.xml | 0 .../skins/default/xui/zh/menu_people_nearby_view_sort.xml | 0 .../skins/default/xui/zh/menu_people_recent_view_sort.xml | 0 indra/newview/skins/default/xui/zh/menu_picks.xml | 0 indra/newview/skins/default/xui/zh/menu_picks_plus.xml | 0 indra/newview/skins/default/xui/zh/menu_place.xml | 0 .../newview/skins/default/xui/zh/menu_place_add_button.xml | 0 .../skins/default/xui/zh/menu_places_gear_folder.xml | 0 .../skins/default/xui/zh/menu_places_gear_landmark.xml | 0 .../newview/skins/default/xui/zh/menu_profile_overflow.xml | 0 indra/newview/skins/default/xui/zh/menu_save_outfit.xml | 0 indra/newview/skins/default/xui/zh/menu_script_chiclet.xml | 0 indra/newview/skins/default/xui/zh/menu_slurl.xml | 0 .../skins/default/xui/zh/menu_teleport_history_gear.xml | 0 .../skins/default/xui/zh/menu_teleport_history_item.xml | 0 .../skins/default/xui/zh/menu_teleport_history_tab.xml | 0 indra/newview/skins/default/xui/zh/menu_text_editor.xml | 0 indra/newview/skins/default/xui/zh/menu_toolbars.xml | 0 indra/newview/skins/default/xui/zh/menu_topinfobar.xml | 0 indra/newview/skins/default/xui/zh/menu_url_agent.xml | 0 indra/newview/skins/default/xui/zh/menu_url_group.xml | 0 indra/newview/skins/default/xui/zh/menu_url_http.xml | 0 indra/newview/skins/default/xui/zh/menu_url_inventory.xml | 0 indra/newview/skins/default/xui/zh/menu_url_map.xml | 0 indra/newview/skins/default/xui/zh/menu_url_objectim.xml | 0 indra/newview/skins/default/xui/zh/menu_url_parcel.xml | 0 indra/newview/skins/default/xui/zh/menu_url_slapp.xml | 0 indra/newview/skins/default/xui/zh/menu_url_slurl.xml | 0 indra/newview/skins/default/xui/zh/menu_url_teleport.xml | 0 indra/newview/skins/default/xui/zh/menu_viewer.xml | 0 .../skins/default/xui/zh/menu_wearable_list_item.xml | 0 indra/newview/skins/default/xui/zh/menu_wearing_gear.xml | 0 indra/newview/skins/default/xui/zh/menu_wearing_tab.xml | 0 indra/newview/skins/default/xui/zh/mime_types.xml | 0 indra/newview/skins/default/xui/zh/mime_types_linux.xml | 0 indra/newview/skins/default/xui/zh/mime_types_mac.xml | 0 indra/newview/skins/default/xui/zh/notifications.xml | 0 .../skins/default/xui/zh/panel_active_object_row.xml | 0 .../skins/default/xui/zh/panel_adhoc_control_panel.xml | 0 .../newview/skins/default/xui/zh/panel_avatar_list_item.xml | 0 indra/newview/skins/default/xui/zh/panel_avatar_tag.xml | 0 .../skins/default/xui/zh/panel_block_list_sidetray.xml | 0 .../skins/default/xui/zh/panel_body_parts_list_item.xml | 0 .../default/xui/zh/panel_bodyparts_list_button_bar.xml | 0 .../newview/skins/default/xui/zh/panel_bottomtray_lite.xml | 0 indra/newview/skins/default/xui/zh/panel_chat_header.xml | 0 indra/newview/skins/default/xui/zh/panel_chiclet_bar.xml | 0 .../newview/skins/default/xui/zh/panel_classified_info.xml | 0 .../skins/default/xui/zh/panel_clothing_list_button_bar.xml | 0 .../skins/default/xui/zh/panel_clothing_list_item.xml | 0 indra/newview/skins/default/xui/zh/panel_cof_wearables.xml | 0 .../default/xui/zh/panel_deletable_wearable_list_item.xml | 0 .../skins/default/xui/zh/panel_dummy_clothing_list_item.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_alpha.xml | 0 .../newview/skins/default/xui/zh/panel_edit_classified.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_eyes.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_gloves.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_hair.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_jacket.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_pants.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_physics.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_pick.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_profile.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_shape.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_shirt.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_shoes.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_skin.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_skirt.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_socks.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml | 0 .../newview/skins/default/xui/zh/panel_edit_underpants.xml | 0 .../newview/skins/default/xui/zh/panel_edit_undershirt.xml | 0 indra/newview/skins/default/xui/zh/panel_edit_wearable.xml | 0 .../skins/default/xui/zh/panel_group_control_panel.xml | 0 indra/newview/skins/default/xui/zh/panel_group_general.xml | 0 .../skins/default/xui/zh/panel_group_info_sidetray.xml | 0 indra/newview/skins/default/xui/zh/panel_group_invite.xml | 0 .../newview/skins/default/xui/zh/panel_group_land_money.xml | 0 .../newview/skins/default/xui/zh/panel_group_list_item.xml | 0 indra/newview/skins/default/xui/zh/panel_group_notices.xml | 0 indra/newview/skins/default/xui/zh/panel_group_notify.xml | 0 indra/newview/skins/default/xui/zh/panel_group_roles.xml | 0 .../newview/skins/default/xui/zh/panel_im_control_panel.xml | 0 .../newview/skins/default/xui/zh/panel_instant_message.xml | 0 indra/newview/skins/default/xui/zh/panel_inventory_item.xml | 0 indra/newview/skins/default/xui/zh/panel_landmark_info.xml | 0 indra/newview/skins/default/xui/zh/panel_landmarks.xml | 0 indra/newview/skins/default/xui/zh/panel_login.xml | 0 indra/newview/skins/default/xui/zh/panel_main_inventory.xml | 0 indra/newview/skins/default/xui/zh/panel_me.xml | 0 .../skins/default/xui/zh/panel_media_settings_general.xml | 0 .../default/xui/zh/panel_media_settings_permissions.xml | 0 .../skins/default/xui/zh/panel_media_settings_security.xml | 0 indra/newview/skins/default/xui/zh/panel_navigation_bar.xml | 0 indra/newview/skins/default/xui/zh/panel_navmesh_rebake.xml | 0 indra/newview/skins/default/xui/zh/panel_nearby_chat.xml | 0 .../newview/skins/default/xui/zh/panel_nearby_chat_bar.xml | 0 indra/newview/skins/default/xui/zh/panel_nearby_media.xml | 0 indra/newview/skins/default/xui/zh/panel_notify_textbox.xml | 0 .../skins/default/xui/zh/panel_online_status_toast.xml | 0 .../newview/skins/default/xui/zh/panel_outbox_inventory.xml | 0 indra/newview/skins/default/xui/zh/panel_outfit_edit.xml | 0 .../skins/default/xui/zh/panel_outfits_inventory.xml | 0 .../default/xui/zh/panel_outfits_inventory_gear_default.xml | 0 indra/newview/skins/default/xui/zh/panel_outfits_list.xml | 0 .../newview/skins/default/xui/zh/panel_outfits_wearing.xml | 0 indra/newview/skins/default/xui/zh/panel_people.xml | 0 indra/newview/skins/default/xui/zh/panel_pick_info.xml | 0 indra/newview/skins/default/xui/zh/panel_picks.xml | 0 indra/newview/skins/default/xui/zh/panel_place_profile.xml | 0 indra/newview/skins/default/xui/zh/panel_places.xml | 0 .../newview/skins/default/xui/zh/panel_postcard_message.xml | 0 .../skins/default/xui/zh/panel_postcard_settings.xml | 0 .../skins/default/xui/zh/panel_preferences_advanced.xml | 0 .../skins/default/xui/zh/panel_preferences_alerts.xml | 0 .../newview/skins/default/xui/zh/panel_preferences_chat.xml | 0 .../skins/default/xui/zh/panel_preferences_colors.xml | 0 .../skins/default/xui/zh/panel_preferences_general.xml | 0 .../skins/default/xui/zh/panel_preferences_graphics1.xml | 0 .../newview/skins/default/xui/zh/panel_preferences_move.xml | 0 .../skins/default/xui/zh/panel_preferences_privacy.xml | 0 .../skins/default/xui/zh/panel_preferences_setup.xml | 0 .../skins/default/xui/zh/panel_preferences_sound.xml | 0 .../skins/default/xui/zh/panel_prim_media_controls.xml | 0 .../newview/skins/default/xui/zh/panel_region_covenant.xml | 0 indra/newview/skins/default/xui/zh/panel_region_debug.xml | 0 .../skins/default/xui/zh/panel_region_environment.xml | 0 indra/newview/skins/default/xui/zh/panel_region_estate.xml | 0 indra/newview/skins/default/xui/zh/panel_region_general.xml | 0 indra/newview/skins/default/xui/zh/panel_region_terrain.xml | 0 indra/newview/skins/default/xui/zh/panel_script_ed.xml | 0 .../skins/default/xui/zh/panel_script_limits_my_avatar.xml | 0 .../default/xui/zh/panel_script_limits_region_memory.xml | 0 .../skins/default/xui/zh/panel_script_question_toast.xml | 0 .../newview/skins/default/xui/zh/panel_scrolling_param.xml | 0 .../skins/default/xui/zh/panel_scrolling_param_base.xml | 0 .../skins/default/xui/zh/panel_side_tray_tab_caption.xml | 0 .../skins/default/xui/zh/panel_snapshot_inventory.xml | 0 indra/newview/skins/default/xui/zh/panel_snapshot_local.xml | 0 .../newview/skins/default/xui/zh/panel_snapshot_options.xml | 0 .../skins/default/xui/zh/panel_snapshot_postcard.xml | 0 .../newview/skins/default/xui/zh/panel_snapshot_profile.xml | 0 indra/newview/skins/default/xui/zh/panel_sound_devices.xml | 0 .../skins/default/xui/zh/panel_stand_stop_flying.xml | 0 indra/newview/skins/default/xui/zh/panel_status_bar.xml | 0 .../newview/skins/default/xui/zh/panel_teleport_history.xml | 0 .../skins/default/xui/zh/panel_teleport_history_item.xml | 0 indra/newview/skins/default/xui/zh/panel_voice_effect.xml | 0 .../newview/skins/default/xui/zh/panel_volume_pulldown.xml | 0 indra/newview/skins/default/xui/zh/panel_world_map.xml | 0 indra/newview/skins/default/xui/zh/role_actions.xml | 0 indra/newview/skins/default/xui/zh/sidepanel_appearance.xml | 0 indra/newview/skins/default/xui/zh/sidepanel_inventory.xml | 0 indra/newview/skins/default/xui/zh/sidepanel_item_info.xml | 0 indra/newview/skins/default/xui/zh/sidepanel_task_info.xml | 0 indra/newview/skins/default/xui/zh/strings.xml | 0 indra/newview/skins/default/xui/zh/teleport_strings.xml | 0 indra/newview/tests/gpus_results.txt | 0 indra/newview/tests/gpus_seen.txt | 0 indra/newview/tests/llagentaccess_test.cpp | 0 indra/newview/tests/llcapabilitylistener_test.cpp | 0 indra/newview/tests/lldateutil_test.cpp | 0 indra/newview/tests/lldir_stub.cpp | 0 indra/newview/tests/llglslshader_stub.cpp | 0 indra/newview/tests/lllogininstance_test.cpp | 0 indra/newview/tests/llmediadataclient_test.cpp | 0 indra/newview/tests/llpipeline_stub.cpp | 0 indra/newview/tests/llremoteparcelrequest_test.cpp | 0 indra/newview/tests/llsecapi_test.cpp | 0 indra/newview/tests/llsechandler_basic_test.cpp | 0 indra/newview/tests/llsimplestat_test.cpp | 0 indra/newview/tests/llsky_stub.cpp | 0 indra/newview/tests/llslurl_test.cpp | 0 indra/newview/tests/lltextureinfo_test.cpp | 0 indra/newview/tests/lltextureinfodetails_test.cpp | 0 indra/newview/tests/lltexturestatsuploader_test.cpp | 0 indra/newview/tests/lltranslate_test.cpp | 0 indra/newview/tests/llversioninfo_test.cpp | 0 indra/newview/tests/llviewerassetstats_test.cpp | 0 indra/newview/tests/llviewerhelputil_test.cpp | 0 indra/newview/tests/llviewernetwork_test.cpp | 0 indra/newview/tests/llviewershadermgr_stub.cpp | 0 indra/newview/tests/llwlanimator_stub.cpp | 0 indra/newview/tests/llwldaycycle_stub.cpp | 0 indra/newview/tests/llwlparammanager_test.cpp | 0 indra/newview/tests/llwlparamset_stub.cpp | 0 indra/newview/tests/llworldmap_test.cpp | 0 indra/newview/tests/llworldmipmap_test.cpp | 0 indra/newview/tests/llxmlrpclistener_test.cpp | 0 indra/newview/tests/test_llxmlrpc_peer.py | 0 indra/newview/tr.lproj/language.txt | 0 indra/newview/uk.lproj/language.txt | 0 indra/newview/viewer_manifest.py | 0 indra/newview/zh-Hans.lproj/language.txt | 0 indra/test/CMakeLists.txt | 0 indra/test/blowfish.1.bin | 0 indra/test/blowfish.2.bin | Bin indra/test/blowfish.digits.txt | 0 indra/test/catch_and_store_what_in.h | 0 indra/test/debug.h | 0 indra/test/io.cpp | 0 indra/test/llapp_tut.cpp | 0 indra/test/llassetuploadqueue_tut.cpp | 0 indra/test/llblowfish_tut.cpp | 0 indra/test/llbuffer_tut.cpp | 0 indra/test/lldatapacker_tut.cpp | 0 indra/test/lldoubledispatch_tut.cpp | 0 indra/test/llevents_tut.cpp | 0 indra/test/llhttpdate_tut.cpp | 0 indra/test/llhttpnode_tut.cpp | 0 indra/test/lliohttpserver_tut.cpp | 0 indra/test/llmessageconfig_tut.cpp | 0 indra/test/llmessagetemplateparser_tut.cpp | 0 indra/test/llpermissions_tut.cpp | 0 indra/test/llpipeutil.cpp | 0 indra/test/llpipeutil.h | 0 indra/test/llsaleinfo_tut.cpp | 0 indra/test/llscriptresource_tut.cpp | 0 indra/test/llsd_new_tut.cpp | 0 indra/test/llsdmessagebuilder_tut.cpp | 0 indra/test/llsdmessagereader_tut.cpp | 0 indra/test/llsdtraits.h | 0 indra/test/llsdutil_tut.cpp | 0 indra/test/llservicebuilder_tut.cpp | 0 indra/test/llstreamtools_tut.cpp | 0 indra/test/lltemplatemessagebuilder_tut.cpp | 0 indra/test/lltimestampcache_tut.cpp | 0 indra/test/lltranscode_tut.cpp | 0 indra/test/lltut.cpp | 0 indra/test/lltut.h | 0 indra/test/lluserrelations_tut.cpp | 0 indra/test/lluuidhashmap_tut.cpp | 0 indra/test/llxorcipher_tut.cpp | 0 indra/test/manageapr.h | 0 indra/test/message_tut.cpp | 0 indra/test/mock_http_client.cpp | 0 indra/test/mock_http_client.h | 0 indra/test/namedtempfile.h | 0 indra/test/prim_linkability_tut.cpp | 0 indra/test/test.cpp | 0 indra/test/test.h | 0 indra/test/test_llmanifest.py | 0 indra/test_apps/llplugintest/CMakeLists.txt | 0 indra/test_apps/llplugintest/bookmarks.txt | 0 indra/test_apps/llplugintest/llmediaplugintest.cpp | 0 indra/test_apps/llplugintest/llmediaplugintest.h | 0 indra/tools/vstool/README.txt | 0 indra/tools/vstool/VSTool.csproj | 0 indra/tools/vstool/VSTool.sln | 0 indra/tools/vstool/main.cs | 0 indra/viewer_components/CMakeLists.txt | 0 indra/viewer_components/login/CMakeLists.txt | 0 indra/viewer_components/login/lllogin.cpp | 0 indra/viewer_components/login/lllogin.h | 0 indra/viewer_components/login/tests/lllogin_test.cpp | 0 indra/viewer_components/updater/CMakeLists.txt | 0 indra/viewer_components/updater/llupdatechecker.cpp | 0 indra/viewer_components/updater/llupdatechecker.h | 0 indra/viewer_components/updater/llupdatedownloader.cpp | 0 indra/viewer_components/updater/llupdatedownloader.h | 0 indra/viewer_components/updater/llupdateinstaller.cpp | 0 indra/viewer_components/updater/llupdateinstaller.h | 0 indra/viewer_components/updater/llupdaterservice.cpp | 0 indra/viewer_components/updater/llupdaterservice.h | 0 .../viewer_components/updater/scripts/darwin/update_install | 0 .../viewer_components/updater/scripts/linux/update_install | 0 .../updater/tests/llupdaterservice_test.cpp | 0 indra/win_crash_logger/CMakeLists.txt | 0 indra/win_crash_logger/StdAfx.cpp | 0 indra/win_crash_logger/StdAfx.h | 0 indra/win_crash_logger/ll_icon.ico | Bin indra/win_crash_logger/llcrashloggerwindows.cpp | 0 indra/win_crash_logger/llcrashloggerwindows.h | 0 indra/win_crash_logger/resource.h | 0 indra/win_crash_logger/win_crash_logger.cpp | 0 indra/win_crash_logger/win_crash_logger.h | 0 indra/win_crash_logger/win_crash_logger.ico | Bin indra/win_crash_logger/win_crash_logger.rc | 0 indra/win_updater/CMakeLists.txt | 0 indra/win_updater/updater.cpp | 0 scripts/messages/message_template.msg | 0 scripts/messages/message_template.msg.sha1 | 0 scripts/setup-path.py | 0 scripts/template_verifier.py | 0 scripts/templates/template-cpp.cpp | 0 scripts/templates/template-h.h | 0 8018 files changed, 5 insertions(+), 4 deletions(-) mode change 100644 => 100755 .hgignore mode change 100644 => 100755 .hgtags mode change 100644 => 100755 BuildParams mode change 100644 => 100755 autobuild.xml mode change 100644 => 100755 doc/LGPL-licence.txt mode change 100644 => 100755 doc/LICENSE-logos.txt mode change 100644 => 100755 doc/LICENSE-source.txt mode change 100644 => 100755 doc/contributions.txt mode change 100644 => 100755 doc/releasenotes-where.txt mode change 100644 => 100755 doc/translations.txt mode change 100644 => 100755 etc/message.xml mode change 100644 => 100755 indra/CMakeLists.txt mode change 100644 => 100755 indra/cmake/00-Common.cmake mode change 100644 => 100755 indra/cmake/APR.cmake mode change 100644 => 100755 indra/cmake/Audio.cmake mode change 100644 => 100755 indra/cmake/BerkeleyDB.cmake mode change 100644 => 100755 indra/cmake/Boost.cmake mode change 100644 => 100755 indra/cmake/BuildVersion.cmake mode change 100644 => 100755 indra/cmake/CARes.cmake mode change 100644 => 100755 indra/cmake/CMakeCopyIfDifferent.cmake mode change 100644 => 100755 indra/cmake/CMakeLists.txt mode change 100644 => 100755 indra/cmake/CSharpMacros.cmake mode change 100644 => 100755 indra/cmake/CURL.cmake mode change 100644 => 100755 indra/cmake/Copy3rdPartyLibs.cmake mode change 100644 => 100755 indra/cmake/CopyBackToSource.cmake mode change 100644 => 100755 indra/cmake/DBusGlib.cmake mode change 100644 => 100755 indra/cmake/DeploySharedLibs.cmake mode change 100644 => 100755 indra/cmake/DirectX.cmake mode change 100644 => 100755 indra/cmake/DragDrop.cmake mode change 100644 => 100755 indra/cmake/EXPAT.cmake mode change 100644 => 100755 indra/cmake/ExamplePlugin.cmake mode change 100644 => 100755 indra/cmake/Externals.cmake mode change 100644 => 100755 indra/cmake/FMOD.cmake mode change 100644 => 100755 indra/cmake/FindAPR.cmake mode change 100644 => 100755 indra/cmake/FindAutobuild.cmake mode change 100644 => 100755 indra/cmake/FindBerkeleyDB.cmake mode change 100644 => 100755 indra/cmake/FindCARes.cmake mode change 100644 => 100755 indra/cmake/FindELFIO.cmake mode change 100644 => 100755 indra/cmake/FindFMOD.cmake mode change 100644 => 100755 indra/cmake/FindGLH.cmake mode change 100644 => 100755 indra/cmake/FindGoogleBreakpad.cmake mode change 100644 => 100755 indra/cmake/FindGooglePerfTools.cmake mode change 100644 => 100755 indra/cmake/FindHUNSPELL.cmake mode change 100644 => 100755 indra/cmake/FindJsonCpp.cmake mode change 100644 => 100755 indra/cmake/FindLLQtWebkit.cmake mode change 100644 => 100755 indra/cmake/FindMT.cmake mode change 100644 => 100755 indra/cmake/FindMono.cmake mode change 100644 => 100755 indra/cmake/FindMySQL.cmake mode change 100644 => 100755 indra/cmake/FindNDOF.cmake mode change 100644 => 100755 indra/cmake/FindOpenJPEG.cmake mode change 100644 => 100755 indra/cmake/FindSCP.cmake mode change 100644 => 100755 indra/cmake/FindSVN.cmake mode change 100644 => 100755 indra/cmake/FindXmlRpcEpi.cmake mode change 100644 => 100755 indra/cmake/FindZLIB.cmake mode change 100644 => 100755 indra/cmake/FreeType.cmake mode change 100644 => 100755 indra/cmake/GLH.cmake mode change 100644 => 100755 indra/cmake/GLOD.cmake mode change 100644 => 100755 indra/cmake/GStreamer010Plugin.cmake mode change 100644 => 100755 indra/cmake/GetPrerequisites_2_8.cmake mode change 100644 => 100755 indra/cmake/Glui.cmake mode change 100644 => 100755 indra/cmake/Glut.cmake mode change 100644 => 100755 indra/cmake/GoogleBreakpad.cmake mode change 100644 => 100755 indra/cmake/GoogleMock.cmake mode change 100644 => 100755 indra/cmake/GooglePerfTools.cmake mode change 100644 => 100755 indra/cmake/Havok.cmake mode change 100644 => 100755 indra/cmake/Hunspell.cmake mode change 100644 => 100755 indra/cmake/JPEG.cmake mode change 100644 => 100755 indra/cmake/JsonCpp.cmake mode change 100644 => 100755 indra/cmake/LLAudio.cmake mode change 100644 => 100755 indra/cmake/LLCharacter.cmake mode change 100644 => 100755 indra/cmake/LLCommon.cmake mode change 100644 => 100755 indra/cmake/LLCoreHttp.cmake mode change 100644 => 100755 indra/cmake/LLCrashLogger.cmake mode change 100644 => 100755 indra/cmake/LLDatabase.cmake mode change 100644 => 100755 indra/cmake/LLImage.cmake mode change 100644 => 100755 indra/cmake/LLImageJ2COJ.cmake mode change 100644 => 100755 indra/cmake/LLInventory.cmake mode change 100644 => 100755 indra/cmake/LLKDU.cmake mode change 100644 => 100755 indra/cmake/LLLogin.cmake mode change 100644 => 100755 indra/cmake/LLMath.cmake mode change 100644 => 100755 indra/cmake/LLMessage.cmake mode change 100644 => 100755 indra/cmake/LLPhysicsExtensions.cmake mode change 100644 => 100755 indra/cmake/LLPlugin.cmake mode change 100644 => 100755 indra/cmake/LLPrimitive.cmake mode change 100644 => 100755 indra/cmake/LLRender.cmake mode change 100644 => 100755 indra/cmake/LLScene.cmake mode change 100644 => 100755 indra/cmake/LLSharedLibs.cmake mode change 100644 => 100755 indra/cmake/LLTestCommand.cmake mode change 100644 => 100755 indra/cmake/LLUI.cmake mode change 100644 => 100755 indra/cmake/LLVFS.cmake mode change 100644 => 100755 indra/cmake/LLWindow.cmake mode change 100644 => 100755 indra/cmake/LLXML.cmake mode change 100644 => 100755 indra/cmake/LLXUIXML.cmake mode change 100644 => 100755 indra/cmake/LScript.cmake mode change 100644 => 100755 indra/cmake/Linking.cmake mode change 100644 => 100755 indra/cmake/MediaPluginBase.cmake mode change 100644 => 100755 indra/cmake/MonoDeps.cmake mode change 100644 => 100755 indra/cmake/MonoEmbed.cmake mode change 100644 => 100755 indra/cmake/MySQL.cmake mode change 100644 => 100755 indra/cmake/NDOF.cmake mode change 100644 => 100755 indra/cmake/NVAPI.cmake mode change 100644 => 100755 indra/cmake/OPENAL.cmake mode change 100644 => 100755 indra/cmake/OpenGL.cmake mode change 100644 => 100755 indra/cmake/OpenJPEG.cmake mode change 100644 => 100755 indra/cmake/OpenSSL.cmake mode change 100644 => 100755 indra/cmake/PNG.cmake mode change 100644 => 100755 indra/cmake/PluginAPI.cmake mode change 100644 => 100755 indra/cmake/Prebuilt.cmake mode change 100644 => 100755 indra/cmake/PulseAudio.cmake mode change 100644 => 100755 indra/cmake/Python.cmake mode change 100644 => 100755 indra/cmake/QuickTimePlugin.cmake mode change 100644 => 100755 indra/cmake/TemplateCheck.cmake mode change 100644 => 100755 indra/cmake/Tut.cmake mode change 100644 => 100755 indra/cmake/UI.cmake mode change 100644 => 100755 indra/cmake/UnixInstall.cmake mode change 100644 => 100755 indra/cmake/Variables.cmake mode change 100644 => 100755 indra/cmake/ViewerMiscLibs.cmake mode change 100644 => 100755 indra/cmake/VisualLeakDetector.cmake mode change 100644 => 100755 indra/cmake/WebKitLibPlugin.cmake mode change 100644 => 100755 indra/cmake/XmlRpcEpi.cmake mode change 100644 => 100755 indra/cmake/ZLIB.cmake mode change 100644 => 100755 indra/cmake/cmake_dummy.cpp mode change 100644 => 100755 indra/cmake/run_build_test.py mode change 100644 => 100755 indra/copy_win_scripts/CMakeLists.txt mode change 100644 => 100755 indra/copy_win_scripts/start-client.py mode change 100644 => 100755 indra/edit-me-to-trigger-new-build.txt mode change 100644 => 100755 indra/fix-incredibuild.py mode change 100644 => 100755 indra/integration_tests/CMakeLists.txt mode change 100644 => 100755 indra/integration_tests/llimage_libtest/CMakeLists.txt mode change 100644 => 100755 indra/integration_tests/llimage_libtest/llimage_libtest.cpp mode change 100644 => 100755 indra/integration_tests/llimage_libtest/llimage_libtest.h mode change 100644 => 100755 indra/integration_tests/llui_libtest/CMakeLists.txt mode change 100644 => 100755 indra/integration_tests/llui_libtest/llui_libtest.cpp mode change 100644 => 100755 indra/integration_tests/llui_libtest/llui_libtest.h mode change 100644 => 100755 indra/integration_tests/llui_libtest/llwidgetreg.cpp mode change 100644 => 100755 indra/integration_tests/llui_libtest/llwidgetreg.h mode change 100644 => 100755 indra/lib/python/indra/__init__.py mode change 100644 => 100755 indra/lib/python/indra/base/__init__.py mode change 100644 => 100755 indra/lib/python/indra/base/cllsd_test.py mode change 100644 => 100755 indra/lib/python/indra/base/config.py mode change 100644 => 100755 indra/lib/python/indra/base/llsd.py mode change 100644 => 100755 indra/lib/python/indra/base/lluuid.py mode change 100644 => 100755 indra/lib/python/indra/base/metrics.py mode change 100644 => 100755 indra/lib/python/indra/ipc/__init__.py mode change 100644 => 100755 indra/lib/python/indra/ipc/compatibility.py mode change 100644 => 100755 indra/lib/python/indra/ipc/httputil.py mode change 100644 => 100755 indra/lib/python/indra/ipc/llmessage.py mode change 100644 => 100755 indra/lib/python/indra/ipc/llsdhttp.py mode change 100644 => 100755 indra/lib/python/indra/ipc/mysql_pool.py mode change 100644 => 100755 indra/lib/python/indra/ipc/russ.py mode change 100644 => 100755 indra/lib/python/indra/ipc/servicebuilder.py mode change 100644 => 100755 indra/lib/python/indra/ipc/siesta.py mode change 100644 => 100755 indra/lib/python/indra/ipc/siesta_test.py mode change 100644 => 100755 indra/lib/python/indra/ipc/tokenstream.py mode change 100644 => 100755 indra/lib/python/indra/ipc/webdav.py mode change 100644 => 100755 indra/lib/python/indra/ipc/xml_rpc.py mode change 100644 => 100755 indra/lib/python/indra/util/__init__.py mode change 100644 => 100755 indra/lib/python/indra/util/fastest_elementtree.py mode change 100644 => 100755 indra/lib/python/indra/util/helpformatter.py mode change 100644 => 100755 indra/lib/python/indra/util/iterators.py mode change 100644 => 100755 indra/lib/python/indra/util/llmanifest.py mode change 100644 => 100755 indra/lib/python/indra/util/llsubprocess.py mode change 100644 => 100755 indra/lib/python/indra/util/llversion.py mode change 100644 => 100755 indra/lib/python/indra/util/named_query.py mode change 100644 => 100755 indra/lib/python/indra/util/shutil2.py mode change 100644 => 100755 indra/lib/python/indra/util/term.py mode change 100644 => 100755 indra/lib/python/indra/util/test_win32_manifest.py mode change 100644 => 100755 indra/lib/python/uuid.py mode change 100644 => 100755 indra/linux_crash_logger/CMakeLists.txt mode change 100644 => 100755 indra/linux_crash_logger/linux_crash_logger.cpp mode change 100644 => 100755 indra/linux_crash_logger/llcrashloggerlinux.cpp mode change 100644 => 100755 indra/linux_crash_logger/llcrashloggerlinux.h mode change 100644 => 100755 indra/llaudio/CMakeLists.txt mode change 100644 => 100755 indra/llaudio/llaudiodecodemgr.cpp mode change 100644 => 100755 indra/llaudio/llaudiodecodemgr.h mode change 100644 => 100755 indra/llaudio/llaudioengine.cpp mode change 100644 => 100755 indra/llaudio/llaudioengine.h mode change 100644 => 100755 indra/llaudio/llaudioengine_fmod.cpp mode change 100644 => 100755 indra/llaudio/llaudioengine_fmod.h mode change 100644 => 100755 indra/llaudio/llaudioengine_openal.cpp mode change 100644 => 100755 indra/llaudio/llaudioengine_openal.h mode change 100644 => 100755 indra/llaudio/lllistener.cpp mode change 100644 => 100755 indra/llaudio/lllistener.h mode change 100644 => 100755 indra/llaudio/lllistener_ds3d.h mode change 100644 => 100755 indra/llaudio/lllistener_fmod.cpp mode change 100644 => 100755 indra/llaudio/lllistener_fmod.h mode change 100644 => 100755 indra/llaudio/lllistener_openal.cpp mode change 100644 => 100755 indra/llaudio/lllistener_openal.h mode change 100644 => 100755 indra/llaudio/llstreamingaudio.h mode change 100644 => 100755 indra/llaudio/llstreamingaudio_fmod.cpp mode change 100644 => 100755 indra/llaudio/llstreamingaudio_fmod.h mode change 100644 => 100755 indra/llaudio/llvorbisencode.cpp mode change 100644 => 100755 indra/llaudio/llvorbisencode.h mode change 100644 => 100755 indra/llaudio/llwindgen.h mode change 100644 => 100755 indra/llcharacter/CMakeLists.txt mode change 100644 => 100755 indra/llcharacter/llanimationstates.cpp mode change 100644 => 100755 indra/llcharacter/llanimationstates.h mode change 100644 => 100755 indra/llcharacter/llbvhconsts.h mode change 100644 => 100755 indra/llcharacter/llbvhloader.cpp mode change 100644 => 100755 indra/llcharacter/llbvhloader.h mode change 100644 => 100755 indra/llcharacter/llcharacter.cpp mode change 100644 => 100755 indra/llcharacter/llcharacter.h mode change 100644 => 100755 indra/llcharacter/lleditingmotion.cpp mode change 100644 => 100755 indra/llcharacter/lleditingmotion.h mode change 100644 => 100755 indra/llcharacter/llgesture.cpp mode change 100644 => 100755 indra/llcharacter/llgesture.h mode change 100644 => 100755 indra/llcharacter/llhandmotion.cpp mode change 100644 => 100755 indra/llcharacter/llhandmotion.h mode change 100644 => 100755 indra/llcharacter/llheadrotmotion.cpp mode change 100644 => 100755 indra/llcharacter/llheadrotmotion.h mode change 100644 => 100755 indra/llcharacter/lljoint.cpp mode change 100644 => 100755 indra/llcharacter/lljoint.h mode change 100644 => 100755 indra/llcharacter/lljointsolverrp3.cpp mode change 100644 => 100755 indra/llcharacter/lljointsolverrp3.h mode change 100644 => 100755 indra/llcharacter/lljointstate.h mode change 100644 => 100755 indra/llcharacter/llkeyframefallmotion.cpp mode change 100644 => 100755 indra/llcharacter/llkeyframefallmotion.h mode change 100644 => 100755 indra/llcharacter/llkeyframemotion.cpp mode change 100644 => 100755 indra/llcharacter/llkeyframemotion.h mode change 100644 => 100755 indra/llcharacter/llkeyframemotionparam.cpp mode change 100644 => 100755 indra/llcharacter/llkeyframemotionparam.h mode change 100644 => 100755 indra/llcharacter/llkeyframestandmotion.cpp mode change 100644 => 100755 indra/llcharacter/llkeyframestandmotion.h mode change 100644 => 100755 indra/llcharacter/llkeyframewalkmotion.cpp mode change 100644 => 100755 indra/llcharacter/llkeyframewalkmotion.h mode change 100644 => 100755 indra/llcharacter/llmotion.cpp mode change 100644 => 100755 indra/llcharacter/llmotion.h mode change 100644 => 100755 indra/llcharacter/llmotioncontroller.cpp mode change 100644 => 100755 indra/llcharacter/llmotioncontroller.h mode change 100644 => 100755 indra/llcharacter/llmultigesture.cpp mode change 100644 => 100755 indra/llcharacter/llmultigesture.h mode change 100644 => 100755 indra/llcharacter/llpose.cpp mode change 100644 => 100755 indra/llcharacter/llpose.h mode change 100644 => 100755 indra/llcharacter/llstatemachine.cpp mode change 100644 => 100755 indra/llcharacter/llstatemachine.h mode change 100644 => 100755 indra/llcharacter/lltargetingmotion.cpp mode change 100644 => 100755 indra/llcharacter/lltargetingmotion.h mode change 100644 => 100755 indra/llcharacter/llvisualparam.cpp mode change 100644 => 100755 indra/llcharacter/llvisualparam.h mode change 100644 => 100755 indra/llcharacter/tests/lljoint_test.cpp mode change 100644 => 100755 indra/llcommon/CMakeLists.txt mode change 100644 => 100755 indra/llcommon/bitpack.cpp mode change 100644 => 100755 indra/llcommon/bitpack.h mode change 100644 => 100755 indra/llcommon/ctype_workaround.h mode change 100644 => 100755 indra/llcommon/doublelinkedlist.h mode change 100644 => 100755 indra/llcommon/fix_macros.h mode change 100644 => 100755 indra/llcommon/imageids.cpp mode change 100644 => 100755 indra/llcommon/imageids.h mode change 100644 => 100755 indra/llcommon/indra_constants.cpp mode change 100644 => 100755 indra/llcommon/indra_constants.h mode change 100644 => 100755 indra/llcommon/is_approx_equal_fraction.h mode change 100644 => 100755 indra/llcommon/linden_common.h mode change 100644 => 100755 indra/llcommon/linked_lists.h mode change 100644 => 100755 indra/llcommon/ll_template_cast.h mode change 100644 => 100755 indra/llcommon/llaccountingcost.h mode change 100644 => 100755 indra/llcommon/llagentconstants.h mode change 100644 => 100755 indra/llcommon/llallocator.cpp mode change 100644 => 100755 indra/llcommon/llallocator.h mode change 100644 => 100755 indra/llcommon/llallocator_heap_profile.cpp mode change 100644 => 100755 indra/llcommon/llallocator_heap_profile.h mode change 100644 => 100755 indra/llcommon/llapp.cpp mode change 100644 => 100755 indra/llcommon/llapp.h mode change 100644 => 100755 indra/llcommon/llapr.cpp mode change 100644 => 100755 indra/llcommon/llapr.h mode change 100644 => 100755 indra/llcommon/llassettype.cpp mode change 100644 => 100755 indra/llcommon/llassettype.h mode change 100644 => 100755 indra/llcommon/llassoclist.h mode change 100644 => 100755 indra/llcommon/llavatarconstants.h mode change 100644 => 100755 indra/llcommon/llavatarname.cpp mode change 100644 => 100755 indra/llcommon/llavatarname.h mode change 100644 => 100755 indra/llcommon/llbase32.cpp mode change 100644 => 100755 indra/llcommon/llbase32.h mode change 100644 => 100755 indra/llcommon/llbase64.cpp mode change 100644 => 100755 indra/llcommon/llbase64.h mode change 100644 => 100755 indra/llcommon/llboost.h mode change 100644 => 100755 indra/llcommon/llchat.h mode change 100644 => 100755 indra/llcommon/llclickaction.h mode change 100644 => 100755 indra/llcommon/llcommon.cpp mode change 100644 => 100755 indra/llcommon/llcommon.h mode change 100644 => 100755 indra/llcommon/llcommonutils.cpp mode change 100644 => 100755 indra/llcommon/llcommonutils.h mode change 100644 => 100755 indra/llcommon/llcoros.cpp mode change 100644 => 100755 indra/llcommon/llcoros.h mode change 100644 => 100755 indra/llcommon/llcrc.cpp mode change 100644 => 100755 indra/llcommon/llcrc.h mode change 100644 => 100755 indra/llcommon/llcriticaldamp.cpp mode change 100644 => 100755 indra/llcommon/llcriticaldamp.h mode change 100644 => 100755 indra/llcommon/llcursortypes.cpp mode change 100644 => 100755 indra/llcommon/llcursortypes.h mode change 100644 => 100755 indra/llcommon/lldarray.h mode change 100644 => 100755 indra/llcommon/lldarrayptr.h mode change 100644 => 100755 indra/llcommon/lldate.cpp mode change 100644 => 100755 indra/llcommon/lldate.h mode change 100644 => 100755 indra/llcommon/lldefs.h mode change 100644 => 100755 indra/llcommon/lldeleteutils.h mode change 100644 => 100755 indra/llcommon/lldependencies.cpp mode change 100644 => 100755 indra/llcommon/lldependencies.h mode change 100644 => 100755 indra/llcommon/lldepthstack.h mode change 100644 => 100755 indra/llcommon/lldictionary.cpp mode change 100644 => 100755 indra/llcommon/lldictionary.h mode change 100644 => 100755 indra/llcommon/lldlinked.h mode change 100644 => 100755 indra/llcommon/lldoubledispatch.h mode change 100644 => 100755 indra/llcommon/lldqueueptr.h mode change 100644 => 100755 indra/llcommon/llendianswizzle.h mode change 100644 => 100755 indra/llcommon/llenum.h mode change 100644 => 100755 indra/llcommon/llerror.cpp mode change 100644 => 100755 indra/llcommon/llerror.h mode change 100644 => 100755 indra/llcommon/llerrorcontrol.h mode change 100644 => 100755 indra/llcommon/llerrorlegacy.h mode change 100644 => 100755 indra/llcommon/llerrorthread.cpp mode change 100644 => 100755 indra/llcommon/llerrorthread.h mode change 100644 => 100755 indra/llcommon/llevent.cpp mode change 100644 => 100755 indra/llcommon/llevent.h mode change 100644 => 100755 indra/llcommon/lleventapi.cpp mode change 100644 => 100755 indra/llcommon/lleventapi.h mode change 100644 => 100755 indra/llcommon/lleventcoro.cpp mode change 100644 => 100755 indra/llcommon/lleventcoro.h mode change 100644 => 100755 indra/llcommon/lleventdispatcher.cpp mode change 100644 => 100755 indra/llcommon/lleventdispatcher.h mode change 100644 => 100755 indra/llcommon/lleventemitter.h mode change 100644 => 100755 indra/llcommon/lleventfilter.cpp mode change 100644 => 100755 indra/llcommon/lleventfilter.h mode change 100644 => 100755 indra/llcommon/llevents.cpp mode change 100644 => 100755 indra/llcommon/llevents.h mode change 100644 => 100755 indra/llcommon/lleventtimer.cpp mode change 100644 => 100755 indra/llcommon/lleventtimer.h mode change 100644 => 100755 indra/llcommon/llextendedstatus.h mode change 100644 => 100755 indra/llcommon/llfasttimer.cpp mode change 100644 => 100755 indra/llcommon/llfasttimer.h mode change 100644 => 100755 indra/llcommon/llfile.cpp mode change 100644 => 100755 indra/llcommon/llfile.h mode change 100644 => 100755 indra/llcommon/llfindlocale.cpp mode change 100644 => 100755 indra/llcommon/llfindlocale.h mode change 100644 => 100755 indra/llcommon/llfixedbuffer.cpp mode change 100644 => 100755 indra/llcommon/llfixedbuffer.h mode change 100644 => 100755 indra/llcommon/llfoldertype.cpp mode change 100644 => 100755 indra/llcommon/llformat.cpp mode change 100644 => 100755 indra/llcommon/llformat.h mode change 100644 => 100755 indra/llcommon/llframetimer.cpp mode change 100644 => 100755 indra/llcommon/llframetimer.h mode change 100644 => 100755 indra/llcommon/llhandle.h mode change 100644 => 100755 indra/llcommon/llhash.h mode change 100644 => 100755 indra/llcommon/llheartbeat.cpp mode change 100644 => 100755 indra/llcommon/llheartbeat.h mode change 100644 => 100755 indra/llcommon/llhttpstatuscodes.h mode change 100644 => 100755 indra/llcommon/llindexedqueue.h mode change 100644 => 100755 indra/llcommon/llinitparam.cpp mode change 100644 => 100755 indra/llcommon/llinitparam.h mode change 100644 => 100755 indra/llcommon/llinstancetracker.cpp mode change 100644 => 100755 indra/llcommon/llinstancetracker.h mode change 100644 => 100755 indra/llcommon/llkeythrottle.h mode change 100644 => 100755 indra/llcommon/llkeyusetracker.h mode change 100644 => 100755 indra/llcommon/lllazy.cpp mode change 100644 => 100755 indra/llcommon/lllazy.h mode change 100644 => 100755 indra/llcommon/llleap.cpp mode change 100644 => 100755 indra/llcommon/llleap.h mode change 100644 => 100755 indra/llcommon/llleaplistener.cpp mode change 100644 => 100755 indra/llcommon/llleaplistener.h mode change 100644 => 100755 indra/llcommon/lllinkedqueue.h mode change 100644 => 100755 indra/llcommon/lllistenerwrapper.h mode change 100644 => 100755 indra/llcommon/llliveappconfig.cpp mode change 100644 => 100755 indra/llcommon/llliveappconfig.h mode change 100644 => 100755 indra/llcommon/lllivefile.cpp mode change 100644 => 100755 indra/llcommon/lllivefile.h mode change 100644 => 100755 indra/llcommon/lllocalidhashmap.h mode change 100644 => 100755 indra/llcommon/lllog.cpp mode change 100644 => 100755 indra/llcommon/lllog.h mode change 100644 => 100755 indra/llcommon/lllslconstants.h mode change 100644 => 100755 indra/llcommon/llmap.h mode change 100644 => 100755 indra/llcommon/llmd5.cpp mode change 100644 => 100755 indra/llcommon/llmd5.h mode change 100644 => 100755 indra/llcommon/llmemory.cpp mode change 100644 => 100755 indra/llcommon/llmemory.h mode change 100644 => 100755 indra/llcommon/llmemorystream.cpp mode change 100644 => 100755 indra/llcommon/llmemorystream.h mode change 100644 => 100755 indra/llcommon/llmetricperformancetester.cpp mode change 100644 => 100755 indra/llcommon/llmetricperformancetester.h mode change 100644 => 100755 indra/llcommon/llmetrics.cpp mode change 100644 => 100755 indra/llcommon/llmetrics.h mode change 100644 => 100755 indra/llcommon/llmortician.cpp mode change 100644 => 100755 indra/llcommon/llmortician.h mode change 100644 => 100755 indra/llcommon/llnametable.h mode change 100644 => 100755 indra/llcommon/lloptioninterface.cpp mode change 100644 => 100755 indra/llcommon/lloptioninterface.h mode change 100644 => 100755 indra/llcommon/llpointer.h mode change 100644 => 100755 indra/llcommon/llpreprocessor.h mode change 100644 => 100755 indra/llcommon/llpriqueuemap.h mode change 100644 => 100755 indra/llcommon/llprocess.cpp mode change 100644 => 100755 indra/llcommon/llprocess.h mode change 100644 => 100755 indra/llcommon/llprocessor.cpp mode change 100644 => 100755 indra/llcommon/llprocessor.h mode change 100644 => 100755 indra/llcommon/llptrskiplist.h mode change 100644 => 100755 indra/llcommon/llptrskipmap.h mode change 100644 => 100755 indra/llcommon/llptrto.cpp mode change 100644 => 100755 indra/llcommon/llptrto.h mode change 100644 => 100755 indra/llcommon/llqueuedthread.cpp mode change 100644 => 100755 indra/llcommon/llqueuedthread.h mode change 100644 => 100755 indra/llcommon/llrand.cpp mode change 100644 => 100755 indra/llcommon/llrand.h mode change 100644 => 100755 indra/llcommon/llrefcount.cpp mode change 100644 => 100755 indra/llcommon/llrefcount.h mode change 100644 => 100755 indra/llcommon/llregistry.h mode change 100644 => 100755 indra/llcommon/llrun.cpp mode change 100644 => 100755 indra/llcommon/llrun.h mode change 100644 => 100755 indra/llcommon/llsafehandle.h mode change 100644 => 100755 indra/llcommon/llsd.cpp mode change 100644 => 100755 indra/llcommon/llsd.h mode change 100644 => 100755 indra/llcommon/llsdparam.cpp mode change 100644 => 100755 indra/llcommon/llsdparam.h mode change 100644 => 100755 indra/llcommon/llsdserialize.cpp mode change 100644 => 100755 indra/llcommon/llsdserialize.h mode change 100644 => 100755 indra/llcommon/llsdserialize_xml.cpp mode change 100644 => 100755 indra/llcommon/llsdserialize_xml.h mode change 100644 => 100755 indra/llcommon/llsdutil.cpp mode change 100644 => 100755 indra/llcommon/llsdutil.h mode change 100644 => 100755 indra/llcommon/llsecondlifeurls.cpp mode change 100644 => 100755 indra/llcommon/llsecondlifeurls.h mode change 100644 => 100755 indra/llcommon/llsimplehash.h mode change 100644 => 100755 indra/llcommon/llsingleton.cpp mode change 100644 => 100755 indra/llcommon/llsingleton.h mode change 100644 => 100755 indra/llcommon/llskiplist.h mode change 100644 => 100755 indra/llcommon/llskipmap.h mode change 100644 => 100755 indra/llcommon/llsmoothstep.h mode change 100644 => 100755 indra/llcommon/llsortedvector.h mode change 100644 => 100755 indra/llcommon/llstack.h mode change 100644 => 100755 indra/llcommon/llstacktrace.cpp mode change 100644 => 100755 indra/llcommon/llstacktrace.h mode change 100644 => 100755 indra/llcommon/llstat.cpp mode change 100644 => 100755 indra/llcommon/llstat.h mode change 100644 => 100755 indra/llcommon/llstatenums.h mode change 100644 => 100755 indra/llcommon/llstl.h mode change 100644 => 100755 indra/llcommon/llstreamqueue.cpp mode change 100644 => 100755 indra/llcommon/llstreamqueue.h mode change 100644 => 100755 indra/llcommon/llstreamtools.cpp mode change 100644 => 100755 indra/llcommon/llstreamtools.h mode change 100644 => 100755 indra/llcommon/llstrider.h mode change 100644 => 100755 indra/llcommon/llstring.cpp mode change 100644 => 100755 indra/llcommon/llstring.h mode change 100644 => 100755 indra/llcommon/llstringtable.cpp mode change 100644 => 100755 indra/llcommon/llstringtable.h mode change 100644 => 100755 indra/llcommon/llsys.cpp mode change 100644 => 100755 indra/llcommon/llsys.h mode change 100644 => 100755 indra/llcommon/llthread.cpp mode change 100644 => 100755 indra/llcommon/llthread.h mode change 100644 => 100755 indra/llcommon/llthreadsafequeue.cpp mode change 100644 => 100755 indra/llcommon/llthreadsafequeue.h mode change 100644 => 100755 indra/llcommon/lltimer.cpp mode change 100644 => 100755 indra/llcommon/lltimer.h mode change 100644 => 100755 indra/llcommon/lltreeiterators.h mode change 100644 => 100755 indra/llcommon/lltypeinfolookup.h mode change 100644 => 100755 indra/llcommon/lluri.cpp mode change 100644 => 100755 indra/llcommon/lluri.h mode change 100644 => 100755 indra/llcommon/lluuid.cpp mode change 100644 => 100755 indra/llcommon/lluuid.h mode change 100644 => 100755 indra/llcommon/lluuidhashmap.h mode change 100644 => 100755 indra/llcommon/llversionserver.h mode change 100644 => 100755 indra/llcommon/llversionviewer.h mode change 100644 => 100755 indra/llcommon/llworkerthread.cpp mode change 100644 => 100755 indra/llcommon/llworkerthread.h mode change 100644 => 100755 indra/llcommon/metaclass.cpp mode change 100644 => 100755 indra/llcommon/metaclass.h mode change 100644 => 100755 indra/llcommon/metaclasst.h mode change 100644 => 100755 indra/llcommon/metaproperty.cpp mode change 100644 => 100755 indra/llcommon/metaproperty.h mode change 100644 => 100755 indra/llcommon/metapropertyt.h mode change 100644 => 100755 indra/llcommon/reflective.cpp mode change 100644 => 100755 indra/llcommon/reflective.h mode change 100644 => 100755 indra/llcommon/reflectivet.h mode change 100644 => 100755 indra/llcommon/roles_constants.h mode change 100644 => 100755 indra/llcommon/stdenums.h mode change 100644 => 100755 indra/llcommon/stdtypes.h mode change 100644 => 100755 indra/llcommon/string_table.h mode change 100644 => 100755 indra/llcommon/stringize.h mode change 100644 => 100755 indra/llcommon/tests/StringVec.h mode change 100644 => 100755 indra/llcommon/tests/bitpack_test.cpp mode change 100644 => 100755 indra/llcommon/tests/commonmisc_test.cpp mode change 100644 => 100755 indra/llcommon/tests/listener.h mode change 100644 => 100755 indra/llcommon/tests/llallocator_heap_profile_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llallocator_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llbase64_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lldate_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lldependencies_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llerror_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lleventcoro_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lleventdispatcher_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lleventfilter_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llframetimer_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llinstancetracker_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lllazy_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llleap_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llmemtype_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llprocess_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llprocessor_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llrand_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llsdserialize_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llsingleton_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llstreamqueue_test.cpp mode change 100644 => 100755 indra/llcommon/tests/llstring_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lltreeiterators_test.cpp mode change 100644 => 100755 indra/llcommon/tests/lluri_test.cpp mode change 100644 => 100755 indra/llcommon/tests/reflection_test.cpp mode change 100644 => 100755 indra/llcommon/tests/stringize_test.cpp mode change 100644 => 100755 indra/llcommon/tests/wrapllerrs.h mode change 100644 => 100755 indra/llcommon/timer.h mode change 100644 => 100755 indra/llcommon/timing.cpp mode change 100644 => 100755 indra/llcommon/timing.h mode change 100644 => 100755 indra/llcommon/u64.cpp mode change 100644 => 100755 indra/llcommon/u64.h mode change 100644 => 100755 indra/llcorehttp/CMakeLists.txt mode change 100644 => 100755 indra/llcorehttp/_httpinternal.h mode change 100644 => 100755 indra/llcorehttp/_httplibcurl.cpp mode change 100644 => 100755 indra/llcorehttp/_httplibcurl.h mode change 100644 => 100755 indra/llcorehttp/_httpopcancel.cpp mode change 100644 => 100755 indra/llcorehttp/_httpopcancel.h mode change 100644 => 100755 indra/llcorehttp/_httpoperation.cpp mode change 100644 => 100755 indra/llcorehttp/_httpoperation.h mode change 100644 => 100755 indra/llcorehttp/_httpoprequest.cpp mode change 100644 => 100755 indra/llcorehttp/_httpoprequest.h mode change 100644 => 100755 indra/llcorehttp/_httpopsetget.cpp mode change 100644 => 100755 indra/llcorehttp/_httpopsetget.h mode change 100644 => 100755 indra/llcorehttp/_httpopsetpriority.cpp mode change 100644 => 100755 indra/llcorehttp/_httpopsetpriority.h mode change 100644 => 100755 indra/llcorehttp/_httppolicy.cpp mode change 100644 => 100755 indra/llcorehttp/_httppolicy.h mode change 100644 => 100755 indra/llcorehttp/_httppolicyclass.cpp mode change 100644 => 100755 indra/llcorehttp/_httppolicyclass.h mode change 100644 => 100755 indra/llcorehttp/_httppolicyglobal.cpp mode change 100644 => 100755 indra/llcorehttp/_httppolicyglobal.h mode change 100644 => 100755 indra/llcorehttp/_httpreadyqueue.h mode change 100644 => 100755 indra/llcorehttp/_httpreplyqueue.cpp mode change 100644 => 100755 indra/llcorehttp/_httpreplyqueue.h mode change 100644 => 100755 indra/llcorehttp/_httprequestqueue.cpp mode change 100644 => 100755 indra/llcorehttp/_httprequestqueue.h mode change 100644 => 100755 indra/llcorehttp/_httpretryqueue.h mode change 100644 => 100755 indra/llcorehttp/_httpservice.cpp mode change 100644 => 100755 indra/llcorehttp/_httpservice.h mode change 100644 => 100755 indra/llcorehttp/_mutex.h mode change 100644 => 100755 indra/llcorehttp/_refcounted.cpp mode change 100644 => 100755 indra/llcorehttp/_refcounted.h mode change 100644 => 100755 indra/llcorehttp/_thread.h mode change 100644 => 100755 indra/llcorehttp/bufferarray.cpp mode change 100644 => 100755 indra/llcorehttp/bufferarray.h mode change 100644 => 100755 indra/llcorehttp/bufferstream.cpp mode change 100644 => 100755 indra/llcorehttp/bufferstream.h mode change 100644 => 100755 indra/llcorehttp/examples/http_texture_load.cpp mode change 100644 => 100755 indra/llcorehttp/httpcommon.cpp mode change 100644 => 100755 indra/llcorehttp/httpcommon.h mode change 100644 => 100755 indra/llcorehttp/httphandler.h mode change 100644 => 100755 indra/llcorehttp/httpheaders.cpp mode change 100644 => 100755 indra/llcorehttp/httpheaders.h mode change 100644 => 100755 indra/llcorehttp/httpoptions.cpp mode change 100644 => 100755 indra/llcorehttp/httpoptions.h mode change 100644 => 100755 indra/llcorehttp/httprequest.cpp mode change 100644 => 100755 indra/llcorehttp/httprequest.h mode change 100644 => 100755 indra/llcorehttp/httpresponse.cpp mode change 100644 => 100755 indra/llcorehttp/httpresponse.h mode change 100644 => 100755 indra/llcorehttp/tests/llcorehttp_test.cpp mode change 100644 => 100755 indra/llcorehttp/tests/llcorehttp_test.h mode change 100644 => 100755 indra/llcorehttp/tests/test_allocator.cpp mode change 100644 => 100755 indra/llcorehttp/tests/test_allocator.h mode change 100644 => 100755 indra/llcorehttp/tests/test_bufferarray.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_bufferstream.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_httpheaders.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_httpoperation.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_httprequest.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_httprequestqueue.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_httpstatus.hpp mode change 100644 => 100755 indra/llcorehttp/tests/test_llcorehttp_peer.py mode change 100644 => 100755 indra/llcorehttp/tests/test_refcounted.hpp mode change 100644 => 100755 indra/llcorehttp/tests/testrunner.py mode change 100644 => 100755 indra/llcrashlogger/CMakeLists.txt mode change 100644 => 100755 indra/llcrashlogger/llcrashlogger.cpp mode change 100644 => 100755 indra/llcrashlogger/llcrashlogger.h mode change 100644 => 100755 indra/llimage/CMakeLists.txt mode change 100644 => 100755 indra/llimage/llimage.cpp mode change 100644 => 100755 indra/llimage/llimage.h mode change 100644 => 100755 indra/llimage/llimagebmp.cpp mode change 100644 => 100755 indra/llimage/llimagebmp.h mode change 100644 => 100755 indra/llimage/llimagedimensionsinfo.cpp mode change 100644 => 100755 indra/llimage/llimagedimensionsinfo.h mode change 100644 => 100755 indra/llimage/llimagedxt.cpp mode change 100644 => 100755 indra/llimage/llimagedxt.h mode change 100644 => 100755 indra/llimage/llimagej2c.cpp mode change 100644 => 100755 indra/llimage/llimagej2c.h mode change 100644 => 100755 indra/llimage/llimagejpeg.cpp mode change 100644 => 100755 indra/llimage/llimagejpeg.h mode change 100644 => 100755 indra/llimage/llimagepng.cpp mode change 100644 => 100755 indra/llimage/llimagepng.h mode change 100644 => 100755 indra/llimage/llimagetga.cpp mode change 100644 => 100755 indra/llimage/llimagetga.h mode change 100644 => 100755 indra/llimage/llimageworker.cpp mode change 100644 => 100755 indra/llimage/llimageworker.h mode change 100644 => 100755 indra/llimage/llmapimagetype.h mode change 100644 => 100755 indra/llimage/llpngwrapper.cpp mode change 100644 => 100755 indra/llimage/llpngwrapper.h mode change 100644 => 100755 indra/llimage/tests/llimageworker_test.cpp mode change 100644 => 100755 indra/llimagej2coj/CMakeLists.txt mode change 100644 => 100755 indra/llimagej2coj/llimagej2coj.cpp mode change 100644 => 100755 indra/llimagej2coj/llimagej2coj.h mode change 100644 => 100755 indra/llinventory/CMakeLists.txt mode change 100644 => 100755 indra/llinventory/llcategory.cpp mode change 100644 => 100755 indra/llinventory/llcategory.h mode change 100644 => 100755 indra/llinventory/lleconomy.cpp mode change 100644 => 100755 indra/llinventory/lleconomy.h mode change 100644 => 100755 indra/llinventory/llinventory.cpp mode change 100644 => 100755 indra/llinventory/llinventory.h mode change 100644 => 100755 indra/llinventory/llinventorydefines.cpp mode change 100644 => 100755 indra/llinventory/llinventorydefines.h mode change 100644 => 100755 indra/llinventory/llinventorytype.cpp mode change 100644 => 100755 indra/llinventory/llinventorytype.h mode change 100644 => 100755 indra/llinventory/lllandmark.cpp mode change 100644 => 100755 indra/llinventory/lllandmark.h mode change 100644 => 100755 indra/llinventory/llnotecard.cpp mode change 100644 => 100755 indra/llinventory/llnotecard.h mode change 100644 => 100755 indra/llinventory/llparcel.cpp mode change 100644 => 100755 indra/llinventory/llparcel.h mode change 100644 => 100755 indra/llinventory/llparcelflags.h mode change 100644 => 100755 indra/llinventory/llpermissions.cpp mode change 100644 => 100755 indra/llinventory/llpermissions.h mode change 100644 => 100755 indra/llinventory/llpermissionsflags.h mode change 100644 => 100755 indra/llinventory/llsaleinfo.cpp mode change 100644 => 100755 indra/llinventory/llsaleinfo.h mode change 100644 => 100755 indra/llinventory/lltransactionflags.cpp mode change 100644 => 100755 indra/llinventory/lltransactionflags.h mode change 100644 => 100755 indra/llinventory/lltransactiontypes.h mode change 100644 => 100755 indra/llinventory/lluserrelations.cpp mode change 100644 => 100755 indra/llinventory/lluserrelations.h mode change 100644 => 100755 indra/llinventory/tests/inventorymisc_test.cpp mode change 100644 => 100755 indra/llinventory/tests/llparcel_test.cpp mode change 100644 => 100755 indra/llkdu/CMakeLists.txt mode change 100644 => 100755 indra/llkdu/llimagej2ckdu.cpp mode change 100644 => 100755 indra/llkdu/llimagej2ckdu.h mode change 100644 => 100755 indra/llkdu/llkdumem.cpp mode change 100644 => 100755 indra/llkdu/llkdumem.h mode change 100644 => 100755 indra/llkdu/tests/llimagej2ckdu_test.cpp mode change 100644 => 100755 indra/llmath/CMakeLists.txt mode change 100644 => 100755 indra/llmath/camera.h mode change 100644 => 100755 indra/llmath/coordframe.h mode change 100644 => 100755 indra/llmath/llbbox.cpp mode change 100644 => 100755 indra/llmath/llbbox.h mode change 100644 => 100755 indra/llmath/llbboxlocal.cpp mode change 100644 => 100755 indra/llmath/llbboxlocal.h mode change 100644 => 100755 indra/llmath/llcalc.cpp mode change 100644 => 100755 indra/llmath/llcalc.h mode change 100644 => 100755 indra/llmath/llcalcparser.cpp mode change 100644 => 100755 indra/llmath/llcalcparser.h mode change 100644 => 100755 indra/llmath/llcamera.cpp mode change 100644 => 100755 indra/llmath/llcamera.h mode change 100644 => 100755 indra/llmath/llcoord.h mode change 100644 => 100755 indra/llmath/llcoordframe.cpp mode change 100644 => 100755 indra/llmath/llcoordframe.h mode change 100644 => 100755 indra/llmath/llinterp.h mode change 100644 => 100755 indra/llmath/llline.cpp mode change 100644 => 100755 indra/llmath/llline.h mode change 100644 => 100755 indra/llmath/llmath.h mode change 100644 => 100755 indra/llmath/llmatrix3a.cpp mode change 100644 => 100755 indra/llmath/llmatrix3a.h mode change 100644 => 100755 indra/llmath/llmatrix3a.inl mode change 100644 => 100755 indra/llmath/llmatrix4a.h mode change 100644 => 100755 indra/llmath/llmodularmath.cpp mode change 100644 => 100755 indra/llmath/llmodularmath.h mode change 100644 => 100755 indra/llmath/lloctree.h mode change 100644 => 100755 indra/llmath/llperlin.cpp mode change 100644 => 100755 indra/llmath/llperlin.h mode change 100644 => 100755 indra/llmath/llplane.h mode change 100644 => 100755 indra/llmath/llquantize.h mode change 100644 => 100755 indra/llmath/llquaternion.cpp mode change 100644 => 100755 indra/llmath/llquaternion.h mode change 100644 => 100755 indra/llmath/llquaternion2.h mode change 100644 => 100755 indra/llmath/llquaternion2.inl mode change 100644 => 100755 indra/llmath/llrect.cpp mode change 100644 => 100755 indra/llmath/llrect.h mode change 100644 => 100755 indra/llmath/llsdutil_math.cpp mode change 100644 => 100755 indra/llmath/llsdutil_math.h mode change 100644 => 100755 indra/llmath/llsimdmath.h mode change 100644 => 100755 indra/llmath/llsimdtypes.h mode change 100644 => 100755 indra/llmath/llsimdtypes.inl mode change 100644 => 100755 indra/llmath/llsphere.cpp mode change 100644 => 100755 indra/llmath/llsphere.h mode change 100644 => 100755 indra/llmath/lltreenode.h mode change 100644 => 100755 indra/llmath/llvector4a.cpp mode change 100644 => 100755 indra/llmath/llvector4a.h mode change 100644 => 100755 indra/llmath/llvector4a.inl mode change 100644 => 100755 indra/llmath/llvector4logical.h mode change 100644 => 100755 indra/llmath/llvolume.cpp mode change 100644 => 100755 indra/llmath/llvolume.h mode change 100644 => 100755 indra/llmath/llvolumemgr.cpp mode change 100644 => 100755 indra/llmath/llvolumemgr.h mode change 100644 => 100755 indra/llmath/llvolumeoctree.cpp mode change 100644 => 100755 indra/llmath/llvolumeoctree.h mode change 100644 => 100755 indra/llmath/m3math.cpp mode change 100644 => 100755 indra/llmath/m3math.h mode change 100644 => 100755 indra/llmath/m4math.cpp mode change 100644 => 100755 indra/llmath/m4math.h mode change 100644 => 100755 indra/llmath/raytrace.cpp mode change 100644 => 100755 indra/llmath/raytrace.h mode change 100644 => 100755 indra/llmath/tests/alignment_test.cpp mode change 100644 => 100755 indra/llmath/tests/llbbox_test.cpp mode change 100644 => 100755 indra/llmath/tests/llbboxlocal_test.cpp mode change 100644 => 100755 indra/llmath/tests/llmodularmath_test.cpp mode change 100644 => 100755 indra/llmath/tests/llquaternion_test.cpp mode change 100644 => 100755 indra/llmath/tests/llrect_test.cpp mode change 100644 => 100755 indra/llmath/tests/m3math_test.cpp mode change 100644 => 100755 indra/llmath/tests/mathmisc_test.cpp mode change 100644 => 100755 indra/llmath/tests/v2math_test.cpp mode change 100644 => 100755 indra/llmath/tests/v3color_test.cpp mode change 100644 => 100755 indra/llmath/tests/v3dmath_test.cpp mode change 100644 => 100755 indra/llmath/tests/v3math_test.cpp mode change 100644 => 100755 indra/llmath/tests/v4color_test.cpp mode change 100644 => 100755 indra/llmath/tests/v4coloru_test.cpp mode change 100644 => 100755 indra/llmath/tests/v4math_test.cpp mode change 100644 => 100755 indra/llmath/tests/xform_test.cpp mode change 100644 => 100755 indra/llmath/v2math.cpp mode change 100644 => 100755 indra/llmath/v2math.h mode change 100644 => 100755 indra/llmath/v3color.cpp mode change 100644 => 100755 indra/llmath/v3color.h mode change 100644 => 100755 indra/llmath/v3dmath.cpp mode change 100644 => 100755 indra/llmath/v3dmath.h mode change 100644 => 100755 indra/llmath/v3math.cpp mode change 100644 => 100755 indra/llmath/v3math.h mode change 100644 => 100755 indra/llmath/v4color.cpp mode change 100644 => 100755 indra/llmath/v4color.h mode change 100644 => 100755 indra/llmath/v4coloru.cpp mode change 100644 => 100755 indra/llmath/v4coloru.h mode change 100644 => 100755 indra/llmath/v4math.cpp mode change 100644 => 100755 indra/llmath/v4math.h mode change 100644 => 100755 indra/llmath/xform.cpp mode change 100644 => 100755 indra/llmath/xform.h mode change 100644 => 100755 indra/llmessage/CMakeLists.txt mode change 100644 => 100755 indra/llmessage/llares.cpp mode change 100644 => 100755 indra/llmessage/llares.h mode change 100644 => 100755 indra/llmessage/llareslistener.cpp mode change 100644 => 100755 indra/llmessage/llareslistener.h mode change 100644 => 100755 indra/llmessage/llassetstorage.cpp mode change 100644 => 100755 indra/llmessage/llassetstorage.h mode change 100644 => 100755 indra/llmessage/llavatarnamecache.cpp mode change 100644 => 100755 indra/llmessage/llavatarnamecache.h mode change 100644 => 100755 indra/llmessage/llblowfishcipher.cpp mode change 100644 => 100755 indra/llmessage/llblowfishcipher.h mode change 100644 => 100755 indra/llmessage/llbuffer.cpp mode change 100644 => 100755 indra/llmessage/llbuffer.h mode change 100644 => 100755 indra/llmessage/llbufferstream.cpp mode change 100644 => 100755 indra/llmessage/llbufferstream.h mode change 100644 => 100755 indra/llmessage/llcachename.cpp mode change 100644 => 100755 indra/llmessage/llcachename.h mode change 100644 => 100755 indra/llmessage/llchainio.cpp mode change 100644 => 100755 indra/llmessage/llchainio.h mode change 100644 => 100755 indra/llmessage/llcipher.h mode change 100644 => 100755 indra/llmessage/llcircuit.cpp mode change 100644 => 100755 indra/llmessage/llcircuit.h mode change 100644 => 100755 indra/llmessage/llclassifiedflags.cpp mode change 100644 => 100755 indra/llmessage/llclassifiedflags.h mode change 100644 => 100755 indra/llmessage/llcurl.cpp mode change 100644 => 100755 indra/llmessage/llcurl.h mode change 100644 => 100755 indra/llmessage/lldatapacker.cpp mode change 100644 => 100755 indra/llmessage/lldatapacker.h mode change 100644 => 100755 indra/llmessage/lldbstrings.h mode change 100644 => 100755 indra/llmessage/lldispatcher.cpp mode change 100644 => 100755 indra/llmessage/lldispatcher.h mode change 100644 => 100755 indra/llmessage/lleventflags.h mode change 100644 => 100755 indra/llmessage/llfiltersd2xmlrpc.cpp mode change 100644 => 100755 indra/llmessage/llfiltersd2xmlrpc.h mode change 100644 => 100755 indra/llmessage/llfollowcamparams.h mode change 100644 => 100755 indra/llmessage/llhost.cpp mode change 100644 => 100755 indra/llmessage/llhost.h mode change 100644 => 100755 indra/llmessage/llhttpassetstorage.cpp mode change 100644 => 100755 indra/llmessage/llhttpassetstorage.h mode change 100644 => 100755 indra/llmessage/llhttpclient.cpp mode change 100644 => 100755 indra/llmessage/llhttpclient.h mode change 100644 => 100755 indra/llmessage/llhttpclientadapter.cpp mode change 100644 => 100755 indra/llmessage/llhttpclientadapter.h mode change 100644 => 100755 indra/llmessage/llhttpclientinterface.h mode change 100644 => 100755 indra/llmessage/llhttpnode.cpp mode change 100644 => 100755 indra/llmessage/llhttpnode.h mode change 100644 => 100755 indra/llmessage/llhttpnodeadapter.h mode change 100644 => 100755 indra/llmessage/llhttpsender.cpp mode change 100644 => 100755 indra/llmessage/llhttpsender.h mode change 100644 => 100755 indra/llmessage/llinstantmessage.cpp mode change 100644 => 100755 indra/llmessage/llinstantmessage.h mode change 100644 => 100755 indra/llmessage/llinvite.h mode change 100644 => 100755 indra/llmessage/lliobuffer.cpp mode change 100644 => 100755 indra/llmessage/lliobuffer.h mode change 100644 => 100755 indra/llmessage/lliohttpserver.cpp mode change 100644 => 100755 indra/llmessage/lliohttpserver.h mode change 100644 => 100755 indra/llmessage/lliopipe.cpp mode change 100644 => 100755 indra/llmessage/lliopipe.h mode change 100644 => 100755 indra/llmessage/lliosocket.cpp mode change 100644 => 100755 indra/llmessage/lliosocket.h mode change 100644 => 100755 indra/llmessage/llioutil.cpp mode change 100644 => 100755 indra/llmessage/llioutil.h mode change 100644 => 100755 indra/llmessage/llloginflags.h mode change 100644 => 100755 indra/llmessage/llmail.cpp mode change 100644 => 100755 indra/llmessage/llmail.h mode change 100644 => 100755 indra/llmessage/llmessagebuilder.cpp mode change 100644 => 100755 indra/llmessage/llmessagebuilder.h mode change 100644 => 100755 indra/llmessage/llmessageconfig.cpp mode change 100644 => 100755 indra/llmessage/llmessageconfig.h mode change 100644 => 100755 indra/llmessage/llmessagereader.cpp mode change 100644 => 100755 indra/llmessage/llmessagereader.h mode change 100644 => 100755 indra/llmessage/llmessagesenderinterface.h mode change 100644 => 100755 indra/llmessage/llmessagetemplate.cpp mode change 100644 => 100755 indra/llmessage/llmessagetemplate.h mode change 100644 => 100755 indra/llmessage/llmessagetemplateparser.cpp mode change 100644 => 100755 indra/llmessage/llmessagetemplateparser.h mode change 100644 => 100755 indra/llmessage/llmessagethrottle.cpp mode change 100644 => 100755 indra/llmessage/llmessagethrottle.h mode change 100644 => 100755 indra/llmessage/llmime.cpp mode change 100644 => 100755 indra/llmessage/llmime.h mode change 100644 => 100755 indra/llmessage/llmsgvariabletype.h mode change 100644 => 100755 indra/llmessage/llnamevalue.cpp mode change 100644 => 100755 indra/llmessage/llnamevalue.h mode change 100644 => 100755 indra/llmessage/llnullcipher.cpp mode change 100644 => 100755 indra/llmessage/llnullcipher.h mode change 100644 => 100755 indra/llmessage/llpacketack.cpp mode change 100644 => 100755 indra/llmessage/llpacketack.h mode change 100644 => 100755 indra/llmessage/llpacketbuffer.cpp mode change 100644 => 100755 indra/llmessage/llpacketbuffer.h mode change 100644 => 100755 indra/llmessage/llpacketring.cpp mode change 100644 => 100755 indra/llmessage/llpacketring.h mode change 100644 => 100755 indra/llmessage/llpartdata.cpp mode change 100644 => 100755 indra/llmessage/llpartdata.h mode change 100644 => 100755 indra/llmessage/llproxy.cpp mode change 100644 => 100755 indra/llmessage/llproxy.h mode change 100644 => 100755 indra/llmessage/llpumpio.cpp mode change 100644 => 100755 indra/llmessage/llpumpio.h mode change 100644 => 100755 indra/llmessage/llqueryflags.h mode change 100644 => 100755 indra/llmessage/llregionflags.h mode change 100644 => 100755 indra/llmessage/llregionhandle.h mode change 100644 => 100755 indra/llmessage/llregionpresenceverifier.cpp mode change 100644 => 100755 indra/llmessage/llregionpresenceverifier.h mode change 100644 => 100755 indra/llmessage/llsdappservices.cpp mode change 100644 => 100755 indra/llmessage/llsdappservices.h mode change 100644 => 100755 indra/llmessage/llsdhttpserver.cpp mode change 100644 => 100755 indra/llmessage/llsdhttpserver.h mode change 100644 => 100755 indra/llmessage/llsdmessage.cpp mode change 100644 => 100755 indra/llmessage/llsdmessage.h mode change 100644 => 100755 indra/llmessage/llsdmessagebuilder.cpp mode change 100644 => 100755 indra/llmessage/llsdmessagebuilder.h mode change 100644 => 100755 indra/llmessage/llsdmessagereader.cpp mode change 100644 => 100755 indra/llmessage/llsdmessagereader.h mode change 100644 => 100755 indra/llmessage/llsdrpcclient.cpp mode change 100644 => 100755 indra/llmessage/llsdrpcclient.h mode change 100644 => 100755 indra/llmessage/llsdrpcserver.cpp mode change 100644 => 100755 indra/llmessage/llsdrpcserver.h mode change 100644 => 100755 indra/llmessage/llservice.cpp mode change 100644 => 100755 indra/llmessage/llservice.h mode change 100644 => 100755 indra/llmessage/llservicebuilder.cpp mode change 100644 => 100755 indra/llmessage/llservicebuilder.h mode change 100644 => 100755 indra/llmessage/llstoredmessage.cpp mode change 100644 => 100755 indra/llmessage/llstoredmessage.h mode change 100644 => 100755 indra/llmessage/lltaskname.h mode change 100644 => 100755 indra/llmessage/llteleportflags.h mode change 100644 => 100755 indra/llmessage/lltemplatemessagebuilder.cpp mode change 100644 => 100755 indra/llmessage/lltemplatemessagebuilder.h mode change 100644 => 100755 indra/llmessage/lltemplatemessagedispatcher.cpp mode change 100644 => 100755 indra/llmessage/lltemplatemessagedispatcher.h mode change 100644 => 100755 indra/llmessage/lltemplatemessagereader.cpp mode change 100644 => 100755 indra/llmessage/lltemplatemessagereader.h mode change 100644 => 100755 indra/llmessage/llthrottle.cpp mode change 100644 => 100755 indra/llmessage/llthrottle.h mode change 100644 => 100755 indra/llmessage/lltransfermanager.cpp mode change 100644 => 100755 indra/llmessage/lltransfermanager.h mode change 100644 => 100755 indra/llmessage/lltransfersourceasset.cpp mode change 100644 => 100755 indra/llmessage/lltransfersourceasset.h mode change 100644 => 100755 indra/llmessage/lltransfersourcefile.cpp mode change 100644 => 100755 indra/llmessage/lltransfersourcefile.h mode change 100644 => 100755 indra/llmessage/lltransfertargetfile.cpp mode change 100644 => 100755 indra/llmessage/lltransfertargetfile.h mode change 100644 => 100755 indra/llmessage/lltransfertargetvfile.cpp mode change 100644 => 100755 indra/llmessage/lltransfertargetvfile.h mode change 100644 => 100755 indra/llmessage/lltrustedmessageservice.cpp mode change 100644 => 100755 indra/llmessage/lltrustedmessageservice.h mode change 100644 => 100755 indra/llmessage/llurlrequest.cpp mode change 100644 => 100755 indra/llmessage/llurlrequest.h mode change 100644 => 100755 indra/llmessage/lluseroperation.cpp mode change 100644 => 100755 indra/llmessage/lluseroperation.h mode change 100644 => 100755 indra/llmessage/llvehicleparams.h mode change 100644 => 100755 indra/llmessage/llxfer.cpp mode change 100644 => 100755 indra/llmessage/llxfer.h mode change 100644 => 100755 indra/llmessage/llxfer_file.cpp mode change 100644 => 100755 indra/llmessage/llxfer_file.h mode change 100644 => 100755 indra/llmessage/llxfer_mem.cpp mode change 100644 => 100755 indra/llmessage/llxfer_mem.h mode change 100644 => 100755 indra/llmessage/llxfer_vfile.cpp mode change 100644 => 100755 indra/llmessage/llxfer_vfile.h mode change 100644 => 100755 indra/llmessage/llxfermanager.cpp mode change 100644 => 100755 indra/llmessage/llxfermanager.h mode change 100644 => 100755 indra/llmessage/llxorcipher.cpp mode change 100644 => 100755 indra/llmessage/llxorcipher.h mode change 100644 => 100755 indra/llmessage/machine.cpp mode change 100644 => 100755 indra/llmessage/machine.h mode change 100644 => 100755 indra/llmessage/mean_collision_data.h mode change 100644 => 100755 indra/llmessage/message.cpp mode change 100644 => 100755 indra/llmessage/message.h mode change 100644 => 100755 indra/llmessage/message_prehash.cpp mode change 100644 => 100755 indra/llmessage/message_prehash.h mode change 100644 => 100755 indra/llmessage/message_string_table.cpp mode change 100644 => 100755 indra/llmessage/net.cpp mode change 100644 => 100755 indra/llmessage/net.h mode change 100644 => 100755 indra/llmessage/partsyspacket.cpp mode change 100644 => 100755 indra/llmessage/partsyspacket.h mode change 100644 => 100755 indra/llmessage/patch_code.cpp mode change 100644 => 100755 indra/llmessage/patch_code.h mode change 100644 => 100755 indra/llmessage/patch_dct.cpp mode change 100644 => 100755 indra/llmessage/patch_dct.h mode change 100644 => 100755 indra/llmessage/patch_idct.cpp mode change 100644 => 100755 indra/llmessage/sound_ids.cpp mode change 100644 => 100755 indra/llmessage/sound_ids.h mode change 100644 => 100755 indra/llmessage/tests/commtest.h mode change 100644 => 100755 indra/llmessage/tests/llareslistener_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llavatarnamecache_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llcurl_stub.cpp mode change 100644 => 100755 indra/llmessage/tests/llhost_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llhttpclient_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llhttpclientadapter_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llmime_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llmockhttpclient.h mode change 100644 => 100755 indra/llmessage/tests/llnamevalue_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llpartdata_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llregionpresenceverifier_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llsdmessage_test.cpp mode change 100644 => 100755 indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp mode change 100644 => 100755 indra/llmessage/tests/lltesthttpclientadapter.cpp mode change 100644 => 100755 indra/llmessage/tests/lltesthttpclientadapter.h mode change 100644 => 100755 indra/llmessage/tests/lltestmessagesender.cpp mode change 100644 => 100755 indra/llmessage/tests/lltestmessagesender.h mode change 100644 => 100755 indra/llmessage/tests/lltrustedmessageservice_test.cpp mode change 100644 => 100755 indra/llmessage/tests/llxfer_file_test.cpp mode change 100644 => 100755 indra/llmessage/tests/networkio.h mode change 100644 => 100755 indra/llmessage/tests/test_llsdmessage_peer.py mode change 100644 => 100755 indra/llmessage/tests/testrunner.py mode change 100644 => 100755 indra/llplugin/CMakeLists.txt mode change 100644 => 100755 indra/llplugin/llpluginclassmedia.cpp mode change 100644 => 100755 indra/llplugin/llpluginclassmedia.h mode change 100644 => 100755 indra/llplugin/llpluginclassmediaowner.h mode change 100644 => 100755 indra/llplugin/llplugincookiestore.cpp mode change 100644 => 100755 indra/llplugin/llplugincookiestore.h mode change 100644 => 100755 indra/llplugin/llplugininstance.cpp mode change 100644 => 100755 indra/llplugin/llplugininstance.h mode change 100644 => 100755 indra/llplugin/llpluginmessage.cpp mode change 100644 => 100755 indra/llplugin/llpluginmessage.h mode change 100644 => 100755 indra/llplugin/llpluginmessageclasses.h mode change 100644 => 100755 indra/llplugin/llpluginmessagepipe.cpp mode change 100644 => 100755 indra/llplugin/llpluginmessagepipe.h mode change 100644 => 100755 indra/llplugin/llpluginprocesschild.cpp mode change 100644 => 100755 indra/llplugin/llpluginprocesschild.h mode change 100644 => 100755 indra/llplugin/llpluginprocessparent.cpp mode change 100644 => 100755 indra/llplugin/llpluginprocessparent.h mode change 100644 => 100755 indra/llplugin/llpluginsharedmemory.cpp mode change 100644 => 100755 indra/llplugin/llpluginsharedmemory.h mode change 100644 => 100755 indra/llplugin/slplugin/CMakeLists.txt mode change 100644 => 100755 indra/llplugin/slplugin/slplugin-objc.h mode change 100644 => 100755 indra/llplugin/slplugin/slplugin-objc.mm mode change 100644 => 100755 indra/llplugin/slplugin/slplugin.cpp mode change 100644 => 100755 indra/llplugin/slplugin/slplugin_info.plist mode change 100644 => 100755 indra/llplugin/tests/llplugincookiestore_test.cpp mode change 100644 => 100755 indra/llprimitive/CMakeLists.txt mode change 100644 => 100755 indra/llprimitive/legacy_object_types.h mode change 100644 => 100755 indra/llprimitive/llmaterialtable.cpp mode change 100644 => 100755 indra/llprimitive/llmaterialtable.h mode change 100644 => 100755 indra/llprimitive/llmediaentry.cpp mode change 100644 => 100755 indra/llprimitive/llmediaentry.h mode change 100644 => 100755 indra/llprimitive/llmodel.cpp mode change 100644 => 100755 indra/llprimitive/llmodel.h mode change 100644 => 100755 indra/llprimitive/llprimitive.cpp mode change 100644 => 100755 indra/llprimitive/llprimitive.h mode change 100644 => 100755 indra/llprimitive/llprimlinkinfo.h mode change 100644 => 100755 indra/llprimitive/llprimtexturelist.cpp mode change 100644 => 100755 indra/llprimitive/llprimtexturelist.h mode change 100644 => 100755 indra/llprimitive/lltextureanim.cpp mode change 100644 => 100755 indra/llprimitive/lltextureanim.h mode change 100644 => 100755 indra/llprimitive/lltextureentry.cpp mode change 100644 => 100755 indra/llprimitive/lltextureentry.h mode change 100644 => 100755 indra/llprimitive/lltree_common.h mode change 100644 => 100755 indra/llprimitive/lltreeparams.cpp mode change 100644 => 100755 indra/llprimitive/lltreeparams.h mode change 100644 => 100755 indra/llprimitive/llvolumemessage.cpp mode change 100644 => 100755 indra/llprimitive/llvolumemessage.h mode change 100644 => 100755 indra/llprimitive/llvolumexml.cpp mode change 100644 => 100755 indra/llprimitive/llvolumexml.h mode change 100644 => 100755 indra/llprimitive/material_codes.cpp mode change 100644 => 100755 indra/llprimitive/material_codes.h mode change 100644 => 100755 indra/llprimitive/object_flags.h mode change 100644 => 100755 indra/llprimitive/tests/llmediaentry_test.cpp mode change 100644 => 100755 indra/llprimitive/tests/llmessagesystem_stub.cpp mode change 100644 => 100755 indra/llprimitive/tests/llprimitive_test.cpp mode change 100644 => 100755 indra/llrender/CMakeLists.txt mode change 100644 => 100755 indra/llrender/llcubemap.cpp mode change 100644 => 100755 indra/llrender/llcubemap.h mode change 100644 => 100755 indra/llrender/llfontbitmapcache.cpp mode change 100644 => 100755 indra/llrender/llfontbitmapcache.h mode change 100644 => 100755 indra/llrender/llfontfreetype.cpp mode change 100644 => 100755 indra/llrender/llfontfreetype.h mode change 100644 => 100755 indra/llrender/llfontgl.cpp mode change 100644 => 100755 indra/llrender/llfontgl.h mode change 100644 => 100755 indra/llrender/llfontregistry.cpp mode change 100644 => 100755 indra/llrender/llfontregistry.h mode change 100644 => 100755 indra/llrender/llgl.cpp mode change 100644 => 100755 indra/llrender/llgl.h mode change 100644 => 100755 indra/llrender/llgldbg.cpp mode change 100644 => 100755 indra/llrender/llgldbg.h mode change 100644 => 100755 indra/llrender/llglheaders.h mode change 100644 => 100755 indra/llrender/llglslshader.cpp mode change 100644 => 100755 indra/llrender/llglslshader.h mode change 100644 => 100755 indra/llrender/llglstates.h mode change 100644 => 100755 indra/llrender/llgltypes.h mode change 100644 => 100755 indra/llrender/llimagegl.cpp mode change 100644 => 100755 indra/llrender/llimagegl.h mode change 100644 => 100755 indra/llrender/llpostprocess.cpp mode change 100644 => 100755 indra/llrender/llpostprocess.h mode change 100644 => 100755 indra/llrender/llrender.cpp mode change 100644 => 100755 indra/llrender/llrender.h mode change 100644 => 100755 indra/llrender/llrendernavprim.cpp mode change 100644 => 100755 indra/llrender/llrendernavprim.h mode change 100644 => 100755 indra/llrender/llrendersphere.cpp mode change 100644 => 100755 indra/llrender/llrendersphere.h mode change 100644 => 100755 indra/llrender/llrendertarget.cpp mode change 100644 => 100755 indra/llrender/llrendertarget.h mode change 100644 => 100755 indra/llrender/llshadermgr.cpp mode change 100644 => 100755 indra/llrender/llshadermgr.h mode change 100644 => 100755 indra/llrender/lltexture.cpp mode change 100644 => 100755 indra/llrender/lltexture.h mode change 100644 => 100755 indra/llrender/llvertexbuffer.cpp mode change 100644 => 100755 indra/llrender/llvertexbuffer.h mode change 100644 => 100755 indra/llui/CMakeLists.txt mode change 100644 => 100755 indra/llui/llaccordionctrl.cpp mode change 100644 => 100755 indra/llui/llaccordionctrl.h mode change 100644 => 100755 indra/llui/llaccordionctrltab.cpp mode change 100644 => 100755 indra/llui/llaccordionctrltab.h mode change 100644 => 100755 indra/llui/llbadge.cpp mode change 100644 => 100755 indra/llui/llbadge.h mode change 100644 => 100755 indra/llui/llbadgeholder.cpp mode change 100644 => 100755 indra/llui/llbadgeholder.h mode change 100644 => 100755 indra/llui/llbadgeowner.cpp mode change 100644 => 100755 indra/llui/llbadgeowner.h mode change 100644 => 100755 indra/llui/llbutton.cpp mode change 100644 => 100755 indra/llui/llbutton.h mode change 100644 => 100755 indra/llui/llcallbackmap.h mode change 100644 => 100755 indra/llui/llchatentry.cpp mode change 100644 => 100755 indra/llui/llchatentry.h mode change 100644 => 100755 indra/llui/llcheckboxctrl.cpp mode change 100644 => 100755 indra/llui/llcheckboxctrl.h mode change 100644 => 100755 indra/llui/llclipboard.cpp mode change 100644 => 100755 indra/llui/llclipboard.h mode change 100644 => 100755 indra/llui/llcombobox.cpp mode change 100644 => 100755 indra/llui/llcombobox.h mode change 100644 => 100755 indra/llui/llcommandmanager.cpp mode change 100644 => 100755 indra/llui/llcommandmanager.h mode change 100644 => 100755 indra/llui/llconsole.cpp mode change 100644 => 100755 indra/llui/llconsole.h mode change 100644 => 100755 indra/llui/llcontainerview.cpp mode change 100644 => 100755 indra/llui/llcontainerview.h mode change 100644 => 100755 indra/llui/llctrlselectioninterface.cpp mode change 100644 => 100755 indra/llui/llctrlselectioninterface.h mode change 100644 => 100755 indra/llui/lldockablefloater.cpp mode change 100644 => 100755 indra/llui/lldockablefloater.h mode change 100644 => 100755 indra/llui/lldockcontrol.cpp mode change 100644 => 100755 indra/llui/lldockcontrol.h mode change 100644 => 100755 indra/llui/lldraghandle.cpp mode change 100644 => 100755 indra/llui/lldraghandle.h mode change 100644 => 100755 indra/llui/lleditmenuhandler.cpp mode change 100644 => 100755 indra/llui/lleditmenuhandler.h mode change 100644 => 100755 indra/llui/llf32uictrl.cpp mode change 100644 => 100755 indra/llui/llf32uictrl.h mode change 100644 => 100755 indra/llui/llfiltereditor.cpp mode change 100644 => 100755 indra/llui/llfiltereditor.h mode change 100644 => 100755 indra/llui/llflashtimer.cpp mode change 100644 => 100755 indra/llui/llflashtimer.h mode change 100644 => 100755 indra/llui/llflatlistview.cpp mode change 100644 => 100755 indra/llui/llflatlistview.h mode change 100644 => 100755 indra/llui/llfloater.cpp mode change 100644 => 100755 indra/llui/llfloater.h mode change 100644 => 100755 indra/llui/llfloaterreg.cpp mode change 100644 => 100755 indra/llui/llfloaterreg.h mode change 100644 => 100755 indra/llui/llfloaterreglistener.cpp mode change 100644 => 100755 indra/llui/llfloaterreglistener.h mode change 100644 => 100755 indra/llui/llflyoutbutton.cpp mode change 100644 => 100755 indra/llui/llflyoutbutton.h mode change 100644 => 100755 indra/llui/llfocusmgr.cpp mode change 100644 => 100755 indra/llui/llfocusmgr.h mode change 100644 => 100755 indra/llui/llfolderview.cpp mode change 100644 => 100755 indra/llui/llfolderview.h mode change 100644 => 100755 indra/llui/llfolderviewmodel.cpp mode change 100644 => 100755 indra/llui/llfolderviewmodel.h mode change 100644 => 100755 indra/llui/llfunctorregistry.cpp mode change 100644 => 100755 indra/llui/llfunctorregistry.h mode change 100644 => 100755 indra/llui/llhelp.h mode change 100644 => 100755 indra/llui/lliconctrl.cpp mode change 100644 => 100755 indra/llui/lliconctrl.h mode change 100644 => 100755 indra/llui/llkeywords.cpp mode change 100644 => 100755 indra/llui/llkeywords.h mode change 100644 => 100755 indra/llui/lllayoutstack.cpp mode change 100644 => 100755 indra/llui/lllayoutstack.h mode change 100644 => 100755 indra/llui/lllazyvalue.h mode change 100644 => 100755 indra/llui/lllineeditor.cpp mode change 100644 => 100755 indra/llui/lllineeditor.h mode change 100644 => 100755 indra/llui/llloadingindicator.cpp mode change 100644 => 100755 indra/llui/llloadingindicator.h mode change 100644 => 100755 indra/llui/lllocalcliprect.cpp mode change 100644 => 100755 indra/llui/lllocalcliprect.h mode change 100644 => 100755 indra/llui/llmenubutton.cpp mode change 100644 => 100755 indra/llui/llmenubutton.h mode change 100644 => 100755 indra/llui/llmenugl.cpp mode change 100644 => 100755 indra/llui/llmenugl.h mode change 100644 => 100755 indra/llui/llmodaldialog.cpp mode change 100644 => 100755 indra/llui/llmodaldialog.h mode change 100644 => 100755 indra/llui/llmultifloater.cpp mode change 100644 => 100755 indra/llui/llmultifloater.h mode change 100644 => 100755 indra/llui/llmultislider.cpp mode change 100644 => 100755 indra/llui/llmultislider.h mode change 100644 => 100755 indra/llui/llmultisliderctrl.cpp mode change 100644 => 100755 indra/llui/llmultisliderctrl.h mode change 100644 => 100755 indra/llui/llnotificationptr.h mode change 100644 => 100755 indra/llui/llnotifications.cpp mode change 100644 => 100755 indra/llui/llnotifications.h mode change 100644 => 100755 indra/llui/llnotificationsutil.cpp mode change 100644 => 100755 indra/llui/llnotificationsutil.h mode change 100644 => 100755 indra/llui/llnotificationtemplate.h mode change 100644 => 100755 indra/llui/llnotificationvisibilityrule.h mode change 100644 => 100755 indra/llui/llpanel.cpp mode change 100644 => 100755 indra/llui/llpanel.h mode change 100644 => 100755 indra/llui/llprogressbar.cpp mode change 100644 => 100755 indra/llui/llprogressbar.h mode change 100644 => 100755 indra/llui/llradiogroup.cpp mode change 100644 => 100755 indra/llui/llradiogroup.h mode change 100644 => 100755 indra/llui/llresizebar.cpp mode change 100644 => 100755 indra/llui/llresizebar.h mode change 100644 => 100755 indra/llui/llresizehandle.cpp mode change 100644 => 100755 indra/llui/llresizehandle.h mode change 100644 => 100755 indra/llui/llresmgr.cpp mode change 100644 => 100755 indra/llui/llresmgr.h mode change 100644 => 100755 indra/llui/llrngwriter.cpp mode change 100644 => 100755 indra/llui/llrngwriter.h mode change 100644 => 100755 indra/llui/llscrollbar.cpp mode change 100644 => 100755 indra/llui/llscrollbar.h mode change 100644 => 100755 indra/llui/llscrollcontainer.cpp mode change 100644 => 100755 indra/llui/llscrollcontainer.h mode change 100644 => 100755 indra/llui/llscrollingpanellist.cpp mode change 100644 => 100755 indra/llui/llscrollingpanellist.h mode change 100644 => 100755 indra/llui/llscrolllistcell.cpp mode change 100644 => 100755 indra/llui/llscrolllistcell.h mode change 100644 => 100755 indra/llui/llscrolllistcolumn.cpp mode change 100644 => 100755 indra/llui/llscrolllistcolumn.h mode change 100644 => 100755 indra/llui/llscrolllistctrl.cpp mode change 100644 => 100755 indra/llui/llscrolllistctrl.h mode change 100644 => 100755 indra/llui/llscrolllistitem.cpp mode change 100644 => 100755 indra/llui/llscrolllistitem.h mode change 100644 => 100755 indra/llui/llsearcheditor.cpp mode change 100644 => 100755 indra/llui/llsearcheditor.h mode change 100644 => 100755 indra/llui/llslider.cpp mode change 100644 => 100755 indra/llui/llslider.h mode change 100644 => 100755 indra/llui/llsliderctrl.cpp mode change 100644 => 100755 indra/llui/llsliderctrl.h mode change 100644 => 100755 indra/llui/llspellcheck.cpp mode change 100644 => 100755 indra/llui/llspellcheck.h mode change 100644 => 100755 indra/llui/llspellcheckmenuhandler.h mode change 100644 => 100755 indra/llui/llspinctrl.cpp mode change 100644 => 100755 indra/llui/llspinctrl.h mode change 100644 => 100755 indra/llui/llstatbar.cpp mode change 100644 => 100755 indra/llui/llstatbar.h mode change 100644 => 100755 indra/llui/llstatgraph.cpp mode change 100644 => 100755 indra/llui/llstatgraph.h mode change 100644 => 100755 indra/llui/llstatview.cpp mode change 100644 => 100755 indra/llui/llstatview.h mode change 100644 => 100755 indra/llui/llstyle.cpp mode change 100644 => 100755 indra/llui/llstyle.h mode change 100644 => 100755 indra/llui/lltabcontainer.cpp mode change 100644 => 100755 indra/llui/lltabcontainer.h mode change 100644 => 100755 indra/llui/lltextbase.cpp mode change 100644 => 100755 indra/llui/lltextbase.h mode change 100644 => 100755 indra/llui/lltextbox.cpp mode change 100644 => 100755 indra/llui/lltextbox.h mode change 100644 => 100755 indra/llui/lltexteditor.cpp mode change 100644 => 100755 indra/llui/lltexteditor.h mode change 100644 => 100755 indra/llui/lltextparser.cpp mode change 100644 => 100755 indra/llui/lltextparser.h mode change 100644 => 100755 indra/llui/lltextutil.cpp mode change 100644 => 100755 indra/llui/lltextutil.h mode change 100644 => 100755 indra/llui/lltextvalidate.cpp mode change 100644 => 100755 indra/llui/lltextvalidate.h mode change 100644 => 100755 indra/llui/lltimectrl.cpp mode change 100644 => 100755 indra/llui/lltimectrl.h mode change 100644 => 100755 indra/llui/lltoggleablemenu.cpp mode change 100644 => 100755 indra/llui/lltoggleablemenu.h mode change 100644 => 100755 indra/llui/lltoolbar.cpp mode change 100644 => 100755 indra/llui/lltoolbar.h mode change 100644 => 100755 indra/llui/lltooltip.cpp mode change 100644 => 100755 indra/llui/lltooltip.h mode change 100644 => 100755 indra/llui/lltrans.cpp mode change 100644 => 100755 indra/llui/lltrans.h mode change 100644 => 100755 indra/llui/lltransutil.cpp mode change 100644 => 100755 indra/llui/lltransutil.h mode change 100644 => 100755 indra/llui/llui.cpp mode change 100644 => 100755 indra/llui/llui.h mode change 100644 => 100755 indra/llui/lluicolor.cpp mode change 100644 => 100755 indra/llui/lluicolor.h mode change 100644 => 100755 indra/llui/lluicolortable.cpp mode change 100644 => 100755 indra/llui/lluicolortable.h mode change 100644 => 100755 indra/llui/lluiconstants.h mode change 100644 => 100755 indra/llui/lluictrl.cpp mode change 100644 => 100755 indra/llui/lluictrl.h mode change 100644 => 100755 indra/llui/lluictrlfactory.cpp mode change 100644 => 100755 indra/llui/lluictrlfactory.h mode change 100644 => 100755 indra/llui/lluifwd.h mode change 100644 => 100755 indra/llui/lluiimage.cpp mode change 100644 => 100755 indra/llui/lluiimage.h mode change 100644 => 100755 indra/llui/lluistring.cpp mode change 100644 => 100755 indra/llui/lluistring.h mode change 100644 => 100755 indra/llui/llundo.cpp mode change 100644 => 100755 indra/llui/llundo.h mode change 100644 => 100755 indra/llui/llurlaction.cpp mode change 100644 => 100755 indra/llui/llurlaction.h mode change 100644 => 100755 indra/llui/llurlentry.cpp mode change 100644 => 100755 indra/llui/llurlentry.h mode change 100644 => 100755 indra/llui/llurlmatch.cpp mode change 100644 => 100755 indra/llui/llurlmatch.h mode change 100644 => 100755 indra/llui/llurlregistry.cpp mode change 100644 => 100755 indra/llui/llurlregistry.h mode change 100644 => 100755 indra/llui/llview.cpp mode change 100644 => 100755 indra/llui/llview.h mode change 100644 => 100755 indra/llui/llviewborder.cpp mode change 100644 => 100755 indra/llui/llviewborder.h mode change 100644 => 100755 indra/llui/llviewinject.cpp mode change 100644 => 100755 indra/llui/llviewinject.h mode change 100644 => 100755 indra/llui/llviewmodel.cpp mode change 100644 => 100755 indra/llui/llviewmodel.h mode change 100644 => 100755 indra/llui/llviewquery.cpp mode change 100644 => 100755 indra/llui/llviewquery.h mode change 100644 => 100755 indra/llui/llwindowshade.cpp mode change 100644 => 100755 indra/llui/llwindowshade.h mode change 100644 => 100755 indra/llui/llxuiparser.cpp mode change 100644 => 100755 indra/llui/llxuiparser.h mode change 100644 => 100755 indra/llui/tests/llurlentry_stub.cpp mode change 100644 => 100755 indra/llui/tests/llurlentry_test.cpp mode change 100644 => 100755 indra/llui/tests/llurlmatch_test.cpp mode change 100644 => 100755 indra/llvfs/CMakeLists.txt mode change 100644 => 100755 indra/llvfs/lldir.cpp mode change 100644 => 100755 indra/llvfs/lldir.h mode change 100644 => 100755 indra/llvfs/lldir_linux.cpp mode change 100644 => 100755 indra/llvfs/lldir_linux.h mode change 100644 => 100755 indra/llvfs/lldir_mac.cpp mode change 100644 => 100755 indra/llvfs/lldir_mac.h mode change 100644 => 100755 indra/llvfs/lldir_solaris.cpp mode change 100644 => 100755 indra/llvfs/lldir_solaris.h mode change 100644 => 100755 indra/llvfs/lldir_win32.cpp mode change 100644 => 100755 indra/llvfs/lldir_win32.h mode change 100644 => 100755 indra/llvfs/lldirguard.h mode change 100644 => 100755 indra/llvfs/lldiriterator.cpp mode change 100644 => 100755 indra/llvfs/lldiriterator.h mode change 100644 => 100755 indra/llvfs/lllfsthread.cpp mode change 100644 => 100755 indra/llvfs/lllfsthread.h mode change 100644 => 100755 indra/llvfs/llpidlock.cpp mode change 100644 => 100755 indra/llvfs/llpidlock.h mode change 100644 => 100755 indra/llvfs/llvfile.cpp mode change 100644 => 100755 indra/llvfs/llvfile.h mode change 100644 => 100755 indra/llvfs/llvfs.cpp mode change 100644 => 100755 indra/llvfs/llvfs.h mode change 100644 => 100755 indra/llvfs/llvfs_objc.h mode change 100644 => 100755 indra/llvfs/llvfs_objc.mm mode change 100644 => 100755 indra/llvfs/llvfsthread.cpp mode change 100644 => 100755 indra/llvfs/llvfsthread.h mode change 100644 => 100755 indra/llvfs/tests/lldir_test.cpp mode change 100644 => 100755 indra/llvfs/tests/lldiriterator_test.cpp mode change 100644 => 100755 indra/llwindow/CMakeLists.txt mode change 100644 => 100755 indra/llwindow/GL/glh_extensions.h mode change 100644 => 100755 indra/llwindow/GL/glh_genext.h mode change 100644 => 100755 indra/llwindow/lldragdropwin32.cpp mode change 100644 => 100755 indra/llwindow/lldragdropwin32.h mode change 100644 => 100755 indra/llwindow/lldxhardware.cpp mode change 100644 => 100755 indra/llwindow/lldxhardware.h mode change 100644 => 100755 indra/llwindow/llkeyboard.cpp mode change 100644 => 100755 indra/llwindow/llkeyboard.h mode change 100644 => 100755 indra/llwindow/llkeyboardheadless.cpp mode change 100644 => 100755 indra/llwindow/llkeyboardheadless.h mode change 100644 => 100755 indra/llwindow/llkeyboardmacosx.cpp mode change 100644 => 100755 indra/llwindow/llkeyboardmacosx.h mode change 100644 => 100755 indra/llwindow/llkeyboardsdl.cpp mode change 100644 => 100755 indra/llwindow/llkeyboardsdl.h mode change 100644 => 100755 indra/llwindow/llkeyboardwin32.cpp mode change 100644 => 100755 indra/llwindow/llkeyboardwin32.h mode change 100644 => 100755 indra/llwindow/llmousehandler.cpp mode change 100644 => 100755 indra/llwindow/llmousehandler.h mode change 100644 => 100755 indra/llwindow/llpreeditor.h mode change 100644 => 100755 indra/llwindow/llwindow.cpp mode change 100644 => 100755 indra/llwindow/llwindow.h mode change 100644 => 100755 indra/llwindow/llwindowcallbacks.cpp mode change 100644 => 100755 indra/llwindow/llwindowcallbacks.h mode change 100644 => 100755 indra/llwindow/llwindowheadless.cpp mode change 100644 => 100755 indra/llwindow/llwindowheadless.h mode change 100644 => 100755 indra/llwindow/llwindowmacosx-objc.h mode change 100644 => 100755 indra/llwindow/llwindowmacosx-objc.mm mode change 100644 => 100755 indra/llwindow/llwindowmacosx.cpp mode change 100644 => 100755 indra/llwindow/llwindowmacosx.h mode change 100644 => 100755 indra/llwindow/llwindowmesaheadless.cpp mode change 100644 => 100755 indra/llwindow/llwindowmesaheadless.h mode change 100644 => 100755 indra/llwindow/llwindowsdl.cpp mode change 100644 => 100755 indra/llwindow/llwindowsdl.h mode change 100644 => 100755 indra/llwindow/llwindowwin32.cpp mode change 100644 => 100755 indra/llwindow/llwindowwin32.h mode change 100644 => 100755 indra/llxml/CMakeLists.txt mode change 100644 => 100755 indra/llxml/llcontrol.cpp mode change 100644 => 100755 indra/llxml/llcontrol.h mode change 100644 => 100755 indra/llxml/llcontrolgroupreader.h mode change 100644 => 100755 indra/llxml/llxmlnode.cpp mode change 100644 => 100755 indra/llxml/llxmlnode.h mode change 100644 => 100755 indra/llxml/llxmlparser.cpp mode change 100644 => 100755 indra/llxml/llxmlparser.h mode change 100644 => 100755 indra/llxml/llxmltree.cpp mode change 100644 => 100755 indra/llxml/llxmltree.h mode change 100644 => 100755 indra/llxml/tests/llcontrol_test.cpp mode change 100644 => 100755 indra/lscript/CMakeLists.txt mode change 100644 => 100755 indra/lscript/llscriptresource.h mode change 100644 => 100755 indra/lscript/llscriptresourceconsumer.h mode change 100644 => 100755 indra/lscript/llscriptresourcepool.h mode change 100644 => 100755 indra/lscript/lscript_alloc.h mode change 100644 => 100755 indra/lscript/lscript_byteconvert.h mode change 100644 => 100755 indra/lscript/lscript_byteformat.h mode change 100644 => 100755 indra/lscript/lscript_compile/CMakeLists.txt mode change 100644 => 100755 indra/lscript/lscript_compile/indra.l mode change 100644 => 100755 indra/lscript/lscript_compile/indra.y mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_alloc.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_bytecode.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_bytecode.h mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_error.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_error.h mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_heap.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_heap.h mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_resource.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_resource.h mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_scope.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_scope.h mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_tree.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_tree.h mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_typecheck.cpp mode change 100644 => 100755 indra/lscript/lscript_compile/lscript_typecheck.h mode change 100644 => 100755 indra/lscript/lscript_compile/windows/unistd.h mode change 100644 => 100755 indra/lscript/lscript_execute.h mode change 100644 => 100755 indra/lscript/lscript_execute/CMakeLists.txt mode change 100644 => 100755 indra/lscript/lscript_execute/llscriptresource.cpp mode change 100644 => 100755 indra/lscript/lscript_execute/llscriptresourceconsumer.cpp mode change 100644 => 100755 indra/lscript/lscript_execute/llscriptresourcepool.cpp mode change 100644 => 100755 indra/lscript/lscript_execute/lscript_execute.cpp mode change 100644 => 100755 indra/lscript/lscript_execute/lscript_heapruntime.cpp mode change 100644 => 100755 indra/lscript/lscript_execute/lscript_heapruntime.h mode change 100644 => 100755 indra/lscript/lscript_execute/lscript_readlso.cpp mode change 100644 => 100755 indra/lscript/lscript_execute/lscript_readlso.h mode change 100644 => 100755 indra/lscript/lscript_export.h mode change 100644 => 100755 indra/lscript/lscript_http.h mode change 100644 => 100755 indra/lscript/lscript_library.h mode change 100644 => 100755 indra/lscript/lscript_library/CMakeLists.txt mode change 100644 => 100755 indra/lscript/lscript_library/lscript_alloc.cpp mode change 100644 => 100755 indra/lscript/lscript_library/lscript_export.cpp mode change 100644 => 100755 indra/lscript/lscript_library/lscript_library.cpp mode change 100644 => 100755 indra/lscript/lscript_rt_interface.h mode change 100644 => 100755 indra/mac_crash_logger/CMakeLists.txt mode change 100644 => 100755 indra/mac_crash_logger/CrashReporter.nib mode change 100644 => 100755 indra/mac_crash_logger/CrashReporter.xib mode change 100644 => 100755 indra/mac_crash_logger/Info.plist mode change 100644 => 100755 indra/mac_crash_logger/llcrashloggermac.cpp mode change 100644 => 100755 indra/mac_crash_logger/llcrashloggermac.h mode change 100644 => 100755 indra/mac_crash_logger/llcrashloggermacdelegate.h mode change 100644 => 100755 indra/mac_crash_logger/llcrashloggermacdelegate.mm mode change 100644 => 100755 indra/mac_crash_logger/mac_crash_logger.cpp mode change 100644 => 100755 indra/mac_updater/AutoUpdater.nib/classes.nib mode change 100644 => 100755 indra/mac_updater/AutoUpdater.nib/info.nib mode change 100644 => 100755 indra/mac_updater/AutoUpdater.nib/objects.xib mode change 100644 => 100755 indra/mac_updater/CMakeLists.txt mode change 100644 => 100755 indra/mac_updater/Info.plist mode change 100644 => 100755 indra/mac_updater/mac_updater.cpp mode change 100644 => 100755 indra/mac_updater/mac_updater.h mode change 100644 => 100755 indra/media_plugins/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/base/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/base/media_plugin_base.cpp mode change 100644 => 100755 indra/media_plugins/base/media_plugin_base.exp mode change 100644 => 100755 indra/media_plugins/base/media_plugin_base.h mode change 100644 => 100755 indra/media_plugins/example/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/example/media_plugin_example.cpp mode change 100644 => 100755 indra/media_plugins/gstreamer010/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp mode change 100644 => 100755 indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h mode change 100644 => 100755 indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp mode change 100644 => 100755 indra/media_plugins/quicktime/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/quicktime/media_plugin_quicktime.cpp mode change 100644 => 100755 indra/media_plugins/webkit/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/webkit/dummy_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/webkit/linux_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc mode change 100644 => 100755 indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc mode change 100644 => 100755 indra/media_plugins/webkit/mac_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/webkit/media_plugin_webkit.cpp mode change 100644 => 100755 indra/media_plugins/webkit/volume_catcher.h mode change 100644 => 100755 indra/media_plugins/webkit/windows_volume_catcher.cpp mode change 100644 => 100755 indra/media_plugins/winmmshim/CMakeLists.txt mode change 100644 => 100755 indra/media_plugins/winmmshim/forwarding_api.cpp mode change 100644 => 100755 indra/media_plugins/winmmshim/forwarding_api.h mode change 100644 => 100755 indra/media_plugins/winmmshim/winmm.def mode change 100644 => 100755 indra/media_plugins/winmmshim/winmm_shim.cpp mode change 100644 => 100755 indra/newview/CMakeLists.txt mode change 100644 => 100755 indra/newview/English.lproj/InfoPlist.strings mode change 100644 => 100755 indra/newview/English.lproj/language.txt mode change 100644 => 100755 indra/newview/German.lproj/language.txt mode change 100644 => 100755 indra/newview/Info-SecondLife.plist mode change 100644 => 100755 indra/newview/Info-SecondLifeVorbis.plist mode change 100644 => 100755 indra/newview/Japanese.lproj/language.txt mode change 100644 => 100755 indra/newview/Korean.lproj/language.txt mode change 100644 => 100755 indra/newview/SecondLife.nib/classes.nib mode change 100644 => 100755 indra/newview/SecondLife.nib/info.nib mode change 100644 => 100755 indra/newview/SecondLife.nib/objects.xib mode change 100644 => 100755 indra/newview/VertexCache.h mode change 100644 => 100755 indra/newview/ViewerInstall.cmake mode change 100644 => 100755 indra/newview/VorbisFramework.h mode change 100644 => 100755 indra/newview/app_settings/CA.pem mode change 100644 => 100755 indra/newview/app_settings/anim.ini mode change 100644 => 100755 indra/newview/app_settings/autoreplace.xml mode change 100644 => 100755 indra/newview/app_settings/cmd_line.xml mode change 100644 => 100755 indra/newview/app_settings/commands.xml mode change 100644 => 100755 indra/newview/app_settings/foldertypes.xml mode change 100644 => 100755 indra/newview/app_settings/grass.xml mode change 100644 => 100755 indra/newview/app_settings/high_graphics.xml mode change 100644 => 100755 indra/newview/app_settings/ignorable_dialogs.xml mode change 100644 => 100755 indra/newview/app_settings/keys.xml mode change 100644 => 100755 indra/newview/app_settings/keywords.ini mode change 100644 => 100755 indra/newview/app_settings/lindenlab.pem mode change 100644 => 100755 indra/newview/app_settings/llsd.xsd mode change 100644 => 100755 indra/newview/app_settings/logcontrol.xml mode change 100644 => 100755 indra/newview/app_settings/low_graphics.xml mode change 100644 => 100755 indra/newview/app_settings/mid_graphics.xml mode change 100644 => 100755 indra/newview/app_settings/settings.xml mode change 100644 => 100755 indra/newview/app_settings/settings_crash_behavior.xml mode change 100644 => 100755 indra/newview/app_settings/settings_files.xml mode change 100644 => 100755 indra/newview/app_settings/settings_minimal.xml mode change 100644 => 100755 indra/newview/app_settings/settings_per_account.xml mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/avatarF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/avatarSkinV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/avatarV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/eyeballF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/eyeballV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/avatar/pickAvatarV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarAlphaV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/avatarV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/blurLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/bumpV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/cofF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseNoColorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/diffuseV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/emissiveV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/fullbrightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/giF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/impostorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/luminanceV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/multiPointLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/normgenV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/pointLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/postDeferredV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/shadowCubeV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/shadowV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/skyF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/skyV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/softenLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/starsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/starsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/sunLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/terrainV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/treeF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/treeShadowV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/treeV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/waterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/deferred/waterV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/effects/glowExtractV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/effects/glowF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/effects/glowV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/terrainF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/terrainV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/waterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/environment/waterV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/alphamaskV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/clipF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/clipV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/customalphaV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/debugF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/debugV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/glowcombineV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/highlightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/highlightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/occlusionCubeV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/occlusionV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/onetexturenocolorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/pathfindingF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/pathfindingNoNormalV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/pathfindingV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/solidcolorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/twotextureaddV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/uiF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/interface/uiV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFuncSpecularV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightFuncV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightSpecularV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/sumLightsSpecularV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/lighting/sumLightsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/bumpF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/bumpV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/emissiveSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/emissiveV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightNoColorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightShinyF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightShinySkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightShinyV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightShinyWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/fullbrightWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/impostorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/impostorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/indexedTextureF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/nonindexedTextureV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/previewF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/previewV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/shinyF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/shinySimpleSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/shinyV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/shinyWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleNoColorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleNonIndexedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleTexGenV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/simpleWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/objects/treeV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/transform/binormalV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/transform/colorV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/transform/normalV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/transform/positionV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/transform/texcoordV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsHelpersV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsWaterV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/gammaF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class1/windlight/transportF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/avatar/eyeballV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/alphaSkinnedV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/alphaV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/avatarAlphaV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/softenLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/deferred/sunLightV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/lighting/sumLightsSpecularV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/lighting/sumLightsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsHelpersV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsWaterF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsWaterV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/cloudsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/gammaF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/skyF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/skyV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class2/windlight/transportF.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class3/avatar/avatarV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class3/lighting/sumLightsSpecularV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/class3/lighting/sumLightsV.glsl mode change 100644 => 100755 indra/newview/app_settings/shaders/shader_hierarchy.txt mode change 100644 => 100755 indra/newview/app_settings/static_data.db2 mode change 100644 => 100755 indra/newview/app_settings/static_index.db2 mode change 100644 => 100755 indra/newview/app_settings/std_bump.ini mode change 100644 => 100755 indra/newview/app_settings/toolbars.xml mode change 100644 => 100755 indra/newview/app_settings/trees.xml mode change 100644 => 100755 indra/newview/app_settings/ultra_graphics.xml mode change 100644 => 100755 indra/newview/app_settings/viewerart.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/clouds2.tga mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Colder%20Tones.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Default.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Dynamic%20Richness.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Pirate%27s%20Dream.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Psycho%20Strobe%21.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Tropicalia.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/days/Weird-O.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/postprocesseffects.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D12AM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D12PM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D3AM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D3PM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D6AM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D6PM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D9AM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/A%2D9PM.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Barcelona.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Blizzard.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Blue%20Midday.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Coastal%20Afternoon.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Coastal%20Sunset.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Default.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Desert%20Sunset.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Fine%20Day.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Fluffy%20Big%20Clouds.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Foggy.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Funky%20Funky%20Funky.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Funky%20Funky.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Gelatto.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Ghost.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Incongruent%20Truths.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Midday%201.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Midday%202.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Midday%203.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Midday%204.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Midday.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Midnight.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Night.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Pirate.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Purple.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Sailor%27s%20Delight.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Sheer%20Surreality.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Sunrise.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/skies/Sunset.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/Default.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/Glassy.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/Murky.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/Pond.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/SNAKE%21%21%21.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/Second%20Plague.xml mode change 100644 => 100755 indra/newview/app_settings/windlight/water/Valdez.xml mode change 100644 => 100755 indra/newview/build_win32_appConfig.py mode change 100644 => 100755 indra/newview/character/attentions.xml mode change 100644 => 100755 indra/newview/character/attentionsN.xml mode change 100644 => 100755 indra/newview/character/avatar_eye.llm mode change 100644 => 100755 indra/newview/character/avatar_eye_1.llm mode change 100644 => 100755 indra/newview/character/avatar_eyelashes.llm mode change 100644 => 100755 indra/newview/character/avatar_hair.llm mode change 100644 => 100755 indra/newview/character/avatar_hair_1.llm mode change 100644 => 100755 indra/newview/character/avatar_hair_2.llm mode change 100644 => 100755 indra/newview/character/avatar_hair_3.llm mode change 100644 => 100755 indra/newview/character/avatar_hair_4.llm mode change 100644 => 100755 indra/newview/character/avatar_hair_5.llm mode change 100644 => 100755 indra/newview/character/avatar_head.llm mode change 100644 => 100755 indra/newview/character/avatar_head_1.llm mode change 100644 => 100755 indra/newview/character/avatar_head_2.llm mode change 100644 => 100755 indra/newview/character/avatar_head_3.llm mode change 100644 => 100755 indra/newview/character/avatar_head_4.llm mode change 100644 => 100755 indra/newview/character/avatar_lad.xml mode change 100644 => 100755 indra/newview/character/avatar_lower_body.llm mode change 100644 => 100755 indra/newview/character/avatar_lower_body_1.llm mode change 100644 => 100755 indra/newview/character/avatar_lower_body_2.llm mode change 100644 => 100755 indra/newview/character/avatar_lower_body_3.llm mode change 100644 => 100755 indra/newview/character/avatar_lower_body_4.llm mode change 100644 => 100755 indra/newview/character/avatar_skeleton.xml mode change 100644 => 100755 indra/newview/character/avatar_skirt.llm mode change 100644 => 100755 indra/newview/character/avatar_skirt_1.llm mode change 100644 => 100755 indra/newview/character/avatar_skirt_2.llm mode change 100644 => 100755 indra/newview/character/avatar_skirt_3.llm mode change 100644 => 100755 indra/newview/character/avatar_skirt_4.llm mode change 100644 => 100755 indra/newview/character/avatar_upper_body.llm mode change 100644 => 100755 indra/newview/character/avatar_upper_body_1.llm mode change 100644 => 100755 indra/newview/character/avatar_upper_body_2.llm mode change 100644 => 100755 indra/newview/character/avatar_upper_body_3.llm mode change 100644 => 100755 indra/newview/character/avatar_upper_body_4.llm mode change 100644 => 100755 indra/newview/character/blush_alpha.tga mode change 100644 => 100755 indra/newview/character/body_skingrain.tga mode change 100644 => 100755 indra/newview/character/bodyfreckles_alpha.tga mode change 100644 => 100755 indra/newview/character/bump_face_wrinkles.tga mode change 100644 => 100755 indra/newview/character/bump_head_base.tga mode change 100644 => 100755 indra/newview/character/bump_lowerbody_base.tga mode change 100644 => 100755 indra/newview/character/bump_pants_wrinkles.tga mode change 100644 => 100755 indra/newview/character/bump_shirt_wrinkles.tga mode change 100644 => 100755 indra/newview/character/bump_upperbody_base.tga mode change 100644 => 100755 indra/newview/character/checkerboard.tga mode change 100644 => 100755 indra/newview/character/eyebrows_alpha.tga mode change 100644 => 100755 indra/newview/character/eyeliner_alpha.tga mode change 100644 => 100755 indra/newview/character/eyeshadow_inner_alpha.tga mode change 100644 => 100755 indra/newview/character/eyeshadow_outer_alpha.tga mode change 100644 => 100755 indra/newview/character/eyewhite.tga mode change 100644 => 100755 indra/newview/character/facehair_chincurtains_alpha.tga mode change 100644 => 100755 indra/newview/character/facehair_moustache_alpha.tga mode change 100644 => 100755 indra/newview/character/facehair_sideburns_alpha.tga mode change 100644 => 100755 indra/newview/character/facehair_soulpatch_alpha.tga mode change 100644 => 100755 indra/newview/character/freckles_alpha.tga mode change 100644 => 100755 indra/newview/character/genepool.xml mode change 100644 => 100755 indra/newview/character/glove_length_alpha.tga mode change 100644 => 100755 indra/newview/character/gloves_fingers_alpha.tga mode change 100644 => 100755 indra/newview/character/head_alpha.tga mode change 100644 => 100755 indra/newview/character/head_color.tga mode change 100644 => 100755 indra/newview/character/head_hair.tga mode change 100644 => 100755 indra/newview/character/head_highlights_alpha.tga mode change 100644 => 100755 indra/newview/character/head_shading_alpha.tga mode change 100644 => 100755 indra/newview/character/head_skingrain.tga mode change 100644 => 100755 indra/newview/character/jacket_length_lower_alpha.tga mode change 100644 => 100755 indra/newview/character/jacket_length_upper_alpha.tga mode change 100644 => 100755 indra/newview/character/jacket_open_lower_alpha.tga mode change 100644 => 100755 indra/newview/character/jacket_open_upper_alpha.tga mode change 100644 => 100755 indra/newview/character/lipgloss_alpha.tga mode change 100644 => 100755 indra/newview/character/lips_mask.tga mode change 100644 => 100755 indra/newview/character/lipstick_alpha.tga mode change 100644 => 100755 indra/newview/character/lowerbody_color.tga mode change 100644 => 100755 indra/newview/character/lowerbody_highlights_alpha.tga mode change 100644 => 100755 indra/newview/character/lowerbody_shading_alpha.tga mode change 100644 => 100755 indra/newview/character/nailpolish_alpha.tga mode change 100644 => 100755 indra/newview/character/pants_length_alpha.tga mode change 100644 => 100755 indra/newview/character/pants_waist_alpha.tga mode change 100644 => 100755 indra/newview/character/rosyface_alpha.tga mode change 100644 => 100755 indra/newview/character/rouge_alpha.tga mode change 100644 => 100755 indra/newview/character/shirt_bottom_alpha.tga mode change 100644 => 100755 indra/newview/character/shirt_collar_alpha.tga mode change 100644 => 100755 indra/newview/character/shirt_collar_back_alpha.tga mode change 100644 => 100755 indra/newview/character/shirt_sleeve_alpha.tga mode change 100644 => 100755 indra/newview/character/shoe_height_alpha.tga mode change 100644 => 100755 indra/newview/character/skirt_length_alpha.tga mode change 100644 => 100755 indra/newview/character/skirt_slit_back_alpha.tga mode change 100644 => 100755 indra/newview/character/skirt_slit_front_alpha.tga mode change 100644 => 100755 indra/newview/character/skirt_slit_left_alpha.tga mode change 100644 => 100755 indra/newview/character/skirt_slit_right_alpha.tga mode change 100644 => 100755 indra/newview/character/underpants_trial_female.tga mode change 100644 => 100755 indra/newview/character/underpants_trial_male.tga mode change 100644 => 100755 indra/newview/character/undershirt_trial_female.tga mode change 100644 => 100755 indra/newview/character/upperbody_color.tga mode change 100644 => 100755 indra/newview/character/upperbody_highlights_alpha.tga mode change 100644 => 100755 indra/newview/character/upperbody_shading_alpha.tga mode change 100644 => 100755 indra/newview/character/upperbodyfreckles_alpha.tga mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_ARROW.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_ARROWDRAG.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_ARROWLOCKED.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_GRABLOCKED.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_NO.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_NOLOCKED.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_PATHFINDING.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END_ADD.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START_ADD.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_SIZENESW.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_SIZENS.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_SIZENWSE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_SIZEWE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLBUY.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLCAMERA.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLCREATE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLFOCUS.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLGRAB.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLLAND.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLMEDIAOPEN.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLOPEN.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLPAN.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLPAUSE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLPICKOBJECT3.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLPLAY.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLROTATE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLSCALE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLSIT.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLTRANSLATE.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_TOOLZOOMIN.tif mode change 100644 => 100755 indra/newview/cursors_mac/UI_CURSOR_WORKING.tif mode change 100644 => 100755 indra/newview/da.lproj/language.txt mode change 100644 => 100755 indra/newview/es.lproj/language.txt mode change 100644 => 100755 indra/newview/featuretable.txt mode change 100644 => 100755 indra/newview/featuretable_linux.txt mode change 100644 => 100755 indra/newview/featuretable_mac.txt mode change 100644 => 100755 indra/newview/featuretable_solaris.txt mode change 100644 => 100755 indra/newview/featuretable_xp.txt mode change 100644 => 100755 indra/newview/fmod_hidden_symbols.exp mode change 100644 => 100755 indra/newview/fmodwrapper.cpp mode change 100644 => 100755 indra/newview/fonts/DejaVu-license.txt mode change 100644 => 100755 indra/newview/fonts/DejaVuSans-Bold.ttf mode change 100644 => 100755 indra/newview/fonts/DejaVuSans-BoldOblique.ttf mode change 100644 => 100755 indra/newview/fonts/DejaVuSans-Oblique.ttf mode change 100644 => 100755 indra/newview/fonts/DejaVuSans.ttf mode change 100644 => 100755 indra/newview/fonts/DejaVuSansMono.ttf mode change 100644 => 100755 indra/newview/fr.lproj/language.txt mode change 100644 => 100755 indra/newview/generate_breakpad_symbols.py mode change 100644 => 100755 indra/newview/gpu_table.txt mode change 100644 => 100755 indra/newview/groupchatlistener.cpp mode change 100644 => 100755 indra/newview/groupchatlistener.h mode change 100644 => 100755 indra/newview/hu.lproj/language.txt mode change 100644 => 100755 indra/newview/icons/beta/secondlife.icns mode change 100644 => 100755 indra/newview/icons/beta/secondlife.ico mode change 100644 => 100755 indra/newview/icons/beta/secondlife_128.png mode change 100644 => 100755 indra/newview/icons/beta/secondlife_16.png mode change 100644 => 100755 indra/newview/icons/beta/secondlife_256.BMP mode change 100644 => 100755 indra/newview/icons/beta/secondlife_256.png mode change 100644 => 100755 indra/newview/icons/beta/secondlife_32.png mode change 100644 => 100755 indra/newview/icons/beta/secondlife_48.png mode change 100644 => 100755 indra/newview/icons/beta/secondlife_512.png mode change 100644 => 100755 indra/newview/icons/development/secondlife.icns mode change 100644 => 100755 indra/newview/icons/development/secondlife.ico mode change 100644 => 100755 indra/newview/icons/development/secondlife_128.png mode change 100644 => 100755 indra/newview/icons/development/secondlife_16.png mode change 100644 => 100755 indra/newview/icons/development/secondlife_256.BMP mode change 100644 => 100755 indra/newview/icons/development/secondlife_256.png mode change 100644 => 100755 indra/newview/icons/development/secondlife_32.png mode change 100644 => 100755 indra/newview/icons/development/secondlife_48.png mode change 100644 => 100755 indra/newview/icons/development/secondlife_512.png mode change 100644 => 100755 indra/newview/icons/project/secondlife.icns mode change 100644 => 100755 indra/newview/icons/project/secondlife.ico mode change 100644 => 100755 indra/newview/icons/project/secondlife_128.png mode change 100644 => 100755 indra/newview/icons/project/secondlife_16.png mode change 100644 => 100755 indra/newview/icons/project/secondlife_256.BMP mode change 100644 => 100755 indra/newview/icons/project/secondlife_256.png mode change 100644 => 100755 indra/newview/icons/project/secondlife_32.png mode change 100644 => 100755 indra/newview/icons/project/secondlife_48.png mode change 100644 => 100755 indra/newview/icons/project/secondlife_512.png mode change 100644 => 100755 indra/newview/icons/release/secondlife.icns mode change 100644 => 100755 indra/newview/icons/release/secondlife.ico mode change 100644 => 100755 indra/newview/icons/release/secondlife_128.png mode change 100644 => 100755 indra/newview/icons/release/secondlife_16.png mode change 100644 => 100755 indra/newview/icons/release/secondlife_256.BMP mode change 100644 => 100755 indra/newview/icons/release/secondlife_256.png mode change 100644 => 100755 indra/newview/icons/release/secondlife_32.png mode change 100644 => 100755 indra/newview/icons/release/secondlife_48.png mode change 100644 => 100755 indra/newview/icons/release/secondlife_512.png mode change 100644 => 100755 indra/newview/icons/test/secondlife.icns mode change 100644 => 100755 indra/newview/icons/test/secondlife.ico mode change 100644 => 100755 indra/newview/icons/test/secondlife_128.png mode change 100644 => 100755 indra/newview/icons/test/secondlife_16.png mode change 100644 => 100755 indra/newview/icons/test/secondlife_256.BMP mode change 100644 => 100755 indra/newview/icons/test/secondlife_256.png mode change 100644 => 100755 indra/newview/icons/test/secondlife_32.png mode change 100644 => 100755 indra/newview/icons/test/secondlife_48.png mode change 100644 => 100755 indra/newview/icons/test/secondlife_512.png mode change 100644 => 100755 indra/newview/installers/darwin/dmg-cleanup.applescript mode change 100644 => 100755 indra/newview/installers/darwin/fix_application_icon_position.sh mode change 100644 => 100755 indra/newview/installers/darwin/release-dmg/Applications-alias.r mode change 100644 => 100755 indra/newview/installers/darwin/release-dmg/_DS_Store mode change 100644 => 100755 indra/newview/installers/darwin/release-dmg/_VolumeIcon.icns mode change 100644 => 100755 indra/newview/installers/darwin/release-dmg/background.jpg mode change 100644 => 100755 indra/newview/installers/windows/FILES_ARE_UNICODE_UTF-16LE.txt mode change 100644 => 100755 indra/newview/installers/windows/install_icon.BMP mode change 100644 => 100755 indra/newview/installers/windows/install_icon.ico mode change 100644 => 100755 indra/newview/installers/windows/installer_template.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_da.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_de.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_en-us.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_es.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_fr.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_it.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_ja.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_pl.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_pt-br.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_ru.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_tr.nsi mode change 100644 => 100755 indra/newview/installers/windows/lang_zh.nsi mode change 100644 => 100755 indra/newview/installers/windows/language_menu.nsi mode change 100644 => 100755 indra/newview/installers/windows/uninstall_icon.BMP mode change 100644 => 100755 indra/newview/installers/windows/uninstall_icon.ico mode change 100644 => 100755 indra/newview/it.lproj/language.txt mode change 100644 => 100755 indra/newview/licenses-linux.txt mode change 100644 => 100755 indra/newview/licenses-mac.txt mode change 100644 => 100755 indra/newview/licenses-solaris.txt mode change 100644 => 100755 indra/newview/licenses-win32.txt mode change 100644 => 100755 indra/newview/linux_tools/client-readme-joystick.txt mode change 100644 => 100755 indra/newview/linux_tools/client-readme-voice.txt mode change 100644 => 100755 indra/newview/linux_tools/client-readme.txt mode change 100644 => 100755 indra/newview/llaccountingcostmanager.cpp mode change 100644 => 100755 indra/newview/llaccountingcostmanager.h mode change 100644 => 100755 indra/newview/llagent.h mode change 100644 => 100755 indra/newview/llagentaccess.cpp mode change 100644 => 100755 indra/newview/llagentaccess.h mode change 100644 => 100755 indra/newview/llagentcamera.cpp mode change 100644 => 100755 indra/newview/llagentcamera.h mode change 100644 => 100755 indra/newview/llagentdata.cpp mode change 100644 => 100755 indra/newview/llagentdata.h mode change 100644 => 100755 indra/newview/llagentlanguage.cpp mode change 100644 => 100755 indra/newview/llagentlanguage.h mode change 100644 => 100755 indra/newview/llagentlistener.cpp mode change 100644 => 100755 indra/newview/llagentlistener.h mode change 100644 => 100755 indra/newview/llagentpicksinfo.cpp mode change 100644 => 100755 indra/newview/llagentpicksinfo.h mode change 100644 => 100755 indra/newview/llagentpilot.cpp mode change 100644 => 100755 indra/newview/llagentpilot.h mode change 100644 => 100755 indra/newview/llagentui.cpp mode change 100644 => 100755 indra/newview/llagentui.h mode change 100644 => 100755 indra/newview/llagentwearables.cpp mode change 100644 => 100755 indra/newview/llagentwearables.h mode change 100644 => 100755 indra/newview/llagentwearablesfetch.cpp mode change 100644 => 100755 indra/newview/llagentwearablesfetch.h mode change 100644 => 100755 indra/newview/llanimstatelabels.cpp mode change 100644 => 100755 indra/newview/llanimstatelabels.h mode change 100644 => 100755 indra/newview/llappcorehttp.cpp mode change 100644 => 100755 indra/newview/llappcorehttp.h mode change 100644 => 100755 indra/newview/llappearance.h mode change 100644 => 100755 indra/newview/llappearancemgr.cpp mode change 100644 => 100755 indra/newview/llappearancemgr.h mode change 100644 => 100755 indra/newview/llappviewer.cpp mode change 100644 => 100755 indra/newview/llappviewer.h mode change 100644 => 100755 indra/newview/llappviewerlinux.cpp mode change 100644 => 100755 indra/newview/llappviewerlinux.h mode change 100644 => 100755 indra/newview/llappviewerlinux_api.h mode change 100644 => 100755 indra/newview/llappviewerlinux_api.xml mode change 100644 => 100755 indra/newview/llappviewerlinux_api_dbus.cpp mode change 100644 => 100755 indra/newview/llappviewerlinux_api_dbus.h mode change 100644 => 100755 indra/newview/llappviewerlinux_api_dbus_syms_raw.inc mode change 100644 => 100755 indra/newview/llappviewerlistener.cpp mode change 100644 => 100755 indra/newview/llappviewerlistener.h mode change 100644 => 100755 indra/newview/llappviewermacosx.cpp mode change 100644 => 100755 indra/newview/llappviewermacosx.h mode change 100644 => 100755 indra/newview/llappviewerwin32.cpp mode change 100644 => 100755 indra/newview/llappviewerwin32.h mode change 100644 => 100755 indra/newview/llassetuploadqueue.cpp mode change 100644 => 100755 indra/newview/llassetuploadqueue.h mode change 100644 => 100755 indra/newview/llassetuploadresponders.cpp mode change 100644 => 100755 indra/newview/llassetuploadresponders.h mode change 100644 => 100755 indra/newview/llattachmentsmgr.cpp mode change 100644 => 100755 indra/newview/llattachmentsmgr.h mode change 100644 => 100755 indra/newview/llaudiosourcevo.cpp mode change 100644 => 100755 indra/newview/llaudiosourcevo.h mode change 100644 => 100755 indra/newview/llautoreplace.cpp mode change 100644 => 100755 indra/newview/llautoreplace.h mode change 100644 => 100755 indra/newview/llavataractions.h mode change 100644 => 100755 indra/newview/llavatariconctrl.h mode change 100644 => 100755 indra/newview/llavatarlist.cpp mode change 100644 => 100755 indra/newview/llavatarlist.h mode change 100644 => 100755 indra/newview/llavatarlistitem.cpp mode change 100644 => 100755 indra/newview/llavatarlistitem.h mode change 100644 => 100755 indra/newview/llavatarpropertiesprocessor.cpp mode change 100644 => 100755 indra/newview/llavatarpropertiesprocessor.h mode change 100644 => 100755 indra/newview/llblockedlistitem.cpp mode change 100644 => 100755 indra/newview/llblockedlistitem.h mode change 100644 => 100755 indra/newview/llblocklist.cpp mode change 100644 => 100755 indra/newview/llblocklist.h mode change 100644 => 100755 indra/newview/llbox.cpp mode change 100644 => 100755 indra/newview/llbox.h mode change 100644 => 100755 indra/newview/llbreadcrumbview.cpp mode change 100644 => 100755 indra/newview/llbreadcrumbview.h mode change 100644 => 100755 indra/newview/llbreastmotion.cpp mode change 100644 => 100755 indra/newview/llbreastmotion.h mode change 100644 => 100755 indra/newview/llbrowsernotification.cpp mode change 100644 => 100755 indra/newview/llbuycurrencyhtml.cpp mode change 100644 => 100755 indra/newview/llbuycurrencyhtml.h mode change 100644 => 100755 indra/newview/llcallbacklist.cpp mode change 100644 => 100755 indra/newview/llcallbacklist.h mode change 100644 => 100755 indra/newview/llcallingcard.cpp mode change 100644 => 100755 indra/newview/llcallingcard.h mode change 100644 => 100755 indra/newview/llcapabilitylistener.cpp mode change 100644 => 100755 indra/newview/llcapabilitylistener.h mode change 100644 => 100755 indra/newview/llcapabilityprovider.h mode change 100644 => 100755 indra/newview/llcaphttpsender.cpp mode change 100644 => 100755 indra/newview/llcaphttpsender.h mode change 100644 => 100755 indra/newview/llchannelmanager.cpp mode change 100644 => 100755 indra/newview/llchannelmanager.h mode change 100644 => 100755 indra/newview/llchatbar.cpp mode change 100644 => 100755 indra/newview/llchatbar.h mode change 100644 => 100755 indra/newview/llchathistory.cpp mode change 100644 => 100755 indra/newview/llchathistory.h mode change 100644 => 100755 indra/newview/llchatitemscontainerctrl.cpp mode change 100644 => 100755 indra/newview/llchatitemscontainerctrl.h mode change 100644 => 100755 indra/newview/llchatmsgbox.cpp mode change 100644 => 100755 indra/newview/llchatmsgbox.h mode change 100644 => 100755 indra/newview/llchiclet.cpp mode change 100644 => 100755 indra/newview/llchiclet.h mode change 100644 => 100755 indra/newview/llchicletbar.cpp mode change 100644 => 100755 indra/newview/llchicletbar.h mode change 100644 => 100755 indra/newview/llclassifiedinfo.cpp mode change 100644 => 100755 indra/newview/llclassifiedinfo.h mode change 100644 => 100755 indra/newview/llclassifiedstatsresponder.cpp mode change 100644 => 100755 indra/newview/llclassifiedstatsresponder.h mode change 100644 => 100755 indra/newview/llcofwearables.cpp mode change 100644 => 100755 indra/newview/llcofwearables.h mode change 100644 => 100755 indra/newview/llcolorswatch.cpp mode change 100644 => 100755 indra/newview/llcolorswatch.h mode change 100644 => 100755 indra/newview/llcommanddispatcherlistener.cpp mode change 100644 => 100755 indra/newview/llcommanddispatcherlistener.h mode change 100644 => 100755 indra/newview/llcommandhandler.h mode change 100644 => 100755 indra/newview/llcommandlineparser.cpp mode change 100644 => 100755 indra/newview/llcommandlineparser.h mode change 100644 => 100755 indra/newview/llcommunicationchannel.cpp mode change 100644 => 100755 indra/newview/llcommunicationchannel.h mode change 100644 => 100755 indra/newview/llcompilequeue.cpp mode change 100644 => 100755 indra/newview/llcompilequeue.h mode change 100644 => 100755 indra/newview/llconfirmationmanager.cpp mode change 100644 => 100755 indra/newview/llconfirmationmanager.h mode change 100644 => 100755 indra/newview/llconversationlog.cpp mode change 100644 => 100755 indra/newview/llconversationlog.h mode change 100644 => 100755 indra/newview/llconversationloglist.cpp mode change 100644 => 100755 indra/newview/llconversationloglist.h mode change 100644 => 100755 indra/newview/llconversationloglistitem.cpp mode change 100644 => 100755 indra/newview/llconversationloglistitem.h mode change 100644 => 100755 indra/newview/llconversationmodel.cpp mode change 100644 => 100755 indra/newview/llcurrencyuimanager.cpp mode change 100644 => 100755 indra/newview/llcurrencyuimanager.h mode change 100644 => 100755 indra/newview/llcylinder.cpp mode change 100644 => 100755 indra/newview/llcylinder.h mode change 100644 => 100755 indra/newview/lldateutil.cpp mode change 100644 => 100755 indra/newview/lldateutil.h mode change 100644 => 100755 indra/newview/lldaycyclemanager.cpp mode change 100644 => 100755 indra/newview/lldaycyclemanager.h mode change 100644 => 100755 indra/newview/lldebugmessagebox.cpp mode change 100644 => 100755 indra/newview/lldebugmessagebox.h mode change 100644 => 100755 indra/newview/lldebugview.cpp mode change 100644 => 100755 indra/newview/lldebugview.h mode change 100644 => 100755 indra/newview/lldeferredsounds.cpp mode change 100644 => 100755 indra/newview/lldeferredsounds.h mode change 100644 => 100755 indra/newview/lldelayedgestureerror.cpp mode change 100644 => 100755 indra/newview/lldelayedgestureerror.h mode change 100644 => 100755 indra/newview/lldirpicker.cpp mode change 100644 => 100755 indra/newview/lldirpicker.h mode change 100644 => 100755 indra/newview/lldndbutton.cpp mode change 100644 => 100755 indra/newview/lldndbutton.h mode change 100644 => 100755 indra/newview/lldonotdisturbnotificationstorage.cpp mode change 100644 => 100755 indra/newview/lldonotdisturbnotificationstorage.h mode change 100644 => 100755 indra/newview/lldrawable.cpp mode change 100644 => 100755 indra/newview/lldrawable.h mode change 100644 => 100755 indra/newview/lldrawpool.cpp mode change 100644 => 100755 indra/newview/lldrawpool.h mode change 100644 => 100755 indra/newview/lldrawpoolalpha.cpp mode change 100644 => 100755 indra/newview/lldrawpoolalpha.h mode change 100644 => 100755 indra/newview/lldrawpoolavatar.cpp mode change 100644 => 100755 indra/newview/lldrawpoolavatar.h mode change 100644 => 100755 indra/newview/lldrawpoolbump.cpp mode change 100644 => 100755 indra/newview/lldrawpoolbump.h mode change 100644 => 100755 indra/newview/lldrawpoolground.cpp mode change 100644 => 100755 indra/newview/lldrawpoolground.h mode change 100644 => 100755 indra/newview/lldrawpoolsimple.cpp mode change 100644 => 100755 indra/newview/lldrawpoolsimple.h mode change 100644 => 100755 indra/newview/lldrawpoolsky.cpp mode change 100644 => 100755 indra/newview/lldrawpoolsky.h mode change 100644 => 100755 indra/newview/lldrawpoolterrain.cpp mode change 100644 => 100755 indra/newview/lldrawpoolterrain.h mode change 100644 => 100755 indra/newview/lldrawpooltree.cpp mode change 100644 => 100755 indra/newview/lldrawpooltree.h mode change 100644 => 100755 indra/newview/lldrawpoolwater.cpp mode change 100644 => 100755 indra/newview/lldrawpoolwater.h mode change 100644 => 100755 indra/newview/lldrawpoolwlsky.cpp mode change 100644 => 100755 indra/newview/lldrawpoolwlsky.h mode change 100644 => 100755 indra/newview/lldriverparam.cpp mode change 100644 => 100755 indra/newview/lldriverparam.h mode change 100644 => 100755 indra/newview/lldynamictexture.cpp mode change 100644 => 100755 indra/newview/lldynamictexture.h mode change 100644 => 100755 indra/newview/llemote.cpp mode change 100644 => 100755 indra/newview/llemote.h mode change 100644 => 100755 indra/newview/llenvmanager.cpp mode change 100644 => 100755 indra/newview/llenvmanager.h mode change 100644 => 100755 indra/newview/llestateinfomodel.cpp mode change 100644 => 100755 indra/newview/llestateinfomodel.h mode change 100644 => 100755 indra/newview/lleventnotifier.cpp mode change 100644 => 100755 indra/newview/lleventnotifier.h mode change 100644 => 100755 indra/newview/lleventpoll.cpp mode change 100644 => 100755 indra/newview/lleventpoll.h mode change 100644 => 100755 indra/newview/llexpandabletextbox.cpp mode change 100644 => 100755 indra/newview/llexpandabletextbox.h mode change 100644 => 100755 indra/newview/llexternaleditor.cpp mode change 100644 => 100755 indra/newview/llexternaleditor.h mode change 100644 => 100755 indra/newview/llface.cpp mode change 100644 => 100755 indra/newview/llface.h mode change 100644 => 100755 indra/newview/llface.inl mode change 100644 => 100755 indra/newview/llfasttimerview.cpp mode change 100644 => 100755 indra/newview/llfasttimerview.h mode change 100644 => 100755 indra/newview/llfavoritesbar.cpp mode change 100644 => 100755 indra/newview/llfavoritesbar.h mode change 100644 => 100755 indra/newview/llfeaturemanager.cpp mode change 100644 => 100755 indra/newview/llfeaturemanager.h mode change 100644 => 100755 indra/newview/llfilepicker.cpp mode change 100644 => 100755 indra/newview/llfilepicker.h mode change 100644 => 100755 indra/newview/llfilteredwearablelist.cpp mode change 100644 => 100755 indra/newview/llfilteredwearablelist.h mode change 100644 => 100755 indra/newview/llfirstuse.cpp mode change 100644 => 100755 indra/newview/llfirstuse.h mode change 100644 => 100755 indra/newview/llflexibleobject.cpp mode change 100644 => 100755 indra/newview/llflexibleobject.h mode change 100644 => 100755 indra/newview/llfloaterabout.cpp mode change 100644 => 100755 indra/newview/llfloaterabout.h mode change 100644 => 100755 indra/newview/llfloaterauction.cpp mode change 100644 => 100755 indra/newview/llfloaterauction.h mode change 100644 => 100755 indra/newview/llfloaterautoreplacesettings.cpp mode change 100644 => 100755 indra/newview/llfloaterautoreplacesettings.h mode change 100644 => 100755 indra/newview/llfloateravatar.cpp mode change 100644 => 100755 indra/newview/llfloateravatar.h mode change 100644 => 100755 indra/newview/llfloateravatarpicker.cpp mode change 100644 => 100755 indra/newview/llfloateravatarpicker.h mode change 100644 => 100755 indra/newview/llfloateravatartextures.cpp mode change 100644 => 100755 indra/newview/llfloateravatartextures.h mode change 100644 => 100755 indra/newview/llfloaterbeacons.cpp mode change 100644 => 100755 indra/newview/llfloaterbeacons.h mode change 100644 => 100755 indra/newview/llfloaterbuildoptions.cpp mode change 100644 => 100755 indra/newview/llfloaterbuildoptions.h mode change 100644 => 100755 indra/newview/llfloaterbulkpermission.cpp mode change 100644 => 100755 indra/newview/llfloaterbulkpermission.h mode change 100644 => 100755 indra/newview/llfloaterbump.cpp mode change 100644 => 100755 indra/newview/llfloaterbump.h mode change 100644 => 100755 indra/newview/llfloaterbuy.cpp mode change 100644 => 100755 indra/newview/llfloaterbuy.h mode change 100644 => 100755 indra/newview/llfloaterbuycontents.cpp mode change 100644 => 100755 indra/newview/llfloaterbuycontents.h mode change 100644 => 100755 indra/newview/llfloaterbuycurrency.cpp mode change 100644 => 100755 indra/newview/llfloaterbuycurrency.h mode change 100644 => 100755 indra/newview/llfloaterbuycurrencyhtml.cpp mode change 100644 => 100755 indra/newview/llfloaterbuycurrencyhtml.h mode change 100644 => 100755 indra/newview/llfloaterbuyland.cpp mode change 100644 => 100755 indra/newview/llfloaterbuyland.h mode change 100644 => 100755 indra/newview/llfloaterbvhpreview.cpp mode change 100644 => 100755 indra/newview/llfloaterbvhpreview.h mode change 100644 => 100755 indra/newview/llfloatercamera.cpp mode change 100644 => 100755 indra/newview/llfloatercamera.h mode change 100644 => 100755 indra/newview/llfloaterchatvoicevolume.cpp mode change 100644 => 100755 indra/newview/llfloaterchatvoicevolume.h mode change 100644 => 100755 indra/newview/llfloatercolorpicker.cpp mode change 100644 => 100755 indra/newview/llfloatercolorpicker.h mode change 100644 => 100755 indra/newview/llfloaterconversationlog.cpp mode change 100644 => 100755 indra/newview/llfloaterconversationlog.h mode change 100644 => 100755 indra/newview/llfloaterconversationpreview.cpp mode change 100644 => 100755 indra/newview/llfloaterconversationpreview.h mode change 100644 => 100755 indra/newview/llfloaterdeleteenvpreset.cpp mode change 100644 => 100755 indra/newview/llfloaterdeleteenvpreset.h mode change 100644 => 100755 indra/newview/llfloaterdestinations.cpp mode change 100644 => 100755 indra/newview/llfloaterdestinations.h mode change 100644 => 100755 indra/newview/llfloaterdisplayname.cpp mode change 100644 => 100755 indra/newview/llfloaterdisplayname.h mode change 100644 => 100755 indra/newview/llfloatereditdaycycle.cpp mode change 100644 => 100755 indra/newview/llfloatereditdaycycle.h mode change 100644 => 100755 indra/newview/llfloatereditsky.cpp mode change 100644 => 100755 indra/newview/llfloatereditsky.h mode change 100644 => 100755 indra/newview/llfloatereditwater.cpp mode change 100644 => 100755 indra/newview/llfloatereditwater.h mode change 100644 => 100755 indra/newview/llfloaterenvironmentsettings.cpp mode change 100644 => 100755 indra/newview/llfloaterenvironmentsettings.h mode change 100644 => 100755 indra/newview/llfloaterevent.cpp mode change 100644 => 100755 indra/newview/llfloaterevent.h mode change 100644 => 100755 indra/newview/llfloaterfonttest.cpp mode change 100644 => 100755 indra/newview/llfloaterfonttest.h mode change 100644 => 100755 indra/newview/llfloatergesture.cpp mode change 100644 => 100755 indra/newview/llfloatergesture.h mode change 100644 => 100755 indra/newview/llfloatergodtools.cpp mode change 100644 => 100755 indra/newview/llfloatergodtools.h mode change 100644 => 100755 indra/newview/llfloatergroupinvite.cpp mode change 100644 => 100755 indra/newview/llfloatergroupinvite.h mode change 100644 => 100755 indra/newview/llfloatergroups.cpp mode change 100644 => 100755 indra/newview/llfloatergroups.h mode change 100644 => 100755 indra/newview/llfloaterhandler.cpp mode change 100644 => 100755 indra/newview/llfloaterhandler.h mode change 100644 => 100755 indra/newview/llfloaterhardwaresettings.cpp mode change 100644 => 100755 indra/newview/llfloaterhardwaresettings.h mode change 100644 => 100755 indra/newview/llfloaterhelpbrowser.cpp mode change 100644 => 100755 indra/newview/llfloaterhelpbrowser.h mode change 100644 => 100755 indra/newview/llfloaterhud.cpp mode change 100644 => 100755 indra/newview/llfloaterhud.h mode change 100644 => 100755 indra/newview/llfloaterimagepreview.cpp mode change 100644 => 100755 indra/newview/llfloaterimagepreview.h mode change 100644 => 100755 indra/newview/llfloaterimcontainer.cpp mode change 100644 => 100755 indra/newview/llfloaterimcontainer.h mode change 100644 => 100755 indra/newview/llfloaterimnearbychat.cpp mode change 100644 => 100755 indra/newview/llfloaterimnearbychat.h mode change 100644 => 100755 indra/newview/llfloaterimnearbychathandler.cpp mode change 100644 => 100755 indra/newview/llfloaterimnearbychathandler.h mode change 100644 => 100755 indra/newview/llfloaterimnearbychatlistener.cpp mode change 100644 => 100755 indra/newview/llfloaterimnearbychatlistener.h mode change 100644 => 100755 indra/newview/llfloaterimsession.cpp mode change 100644 => 100755 indra/newview/llfloaterimsession.h mode change 100644 => 100755 indra/newview/llfloaterimsessiontab.cpp mode change 100644 => 100755 indra/newview/llfloaterimsessiontab.h mode change 100644 => 100755 indra/newview/llfloaterinspect.cpp mode change 100644 => 100755 indra/newview/llfloaterinspect.h mode change 100644 => 100755 indra/newview/llfloaterinventory.cpp mode change 100644 => 100755 indra/newview/llfloaterinventory.h mode change 100644 => 100755 indra/newview/llfloaterjoystick.cpp mode change 100644 => 100755 indra/newview/llfloaterjoystick.h mode change 100644 => 100755 indra/newview/llfloaterlagmeter.cpp mode change 100644 => 100755 indra/newview/llfloaterlagmeter.h mode change 100644 => 100755 indra/newview/llfloaterland.cpp mode change 100644 => 100755 indra/newview/llfloaterland.h mode change 100644 => 100755 indra/newview/llfloaterlandholdings.cpp mode change 100644 => 100755 indra/newview/llfloaterlandholdings.h mode change 100644 => 100755 indra/newview/llfloatermap.cpp mode change 100644 => 100755 indra/newview/llfloatermap.h mode change 100644 => 100755 indra/newview/llfloatermediasettings.cpp mode change 100644 => 100755 indra/newview/llfloatermediasettings.h mode change 100644 => 100755 indra/newview/llfloatermemleak.cpp mode change 100644 => 100755 indra/newview/llfloatermemleak.h mode change 100644 => 100755 indra/newview/llfloatermodelpreview.h mode change 100644 => 100755 indra/newview/llfloatermodeluploadbase.cpp mode change 100644 => 100755 indra/newview/llfloatermodeluploadbase.h mode change 100644 => 100755 indra/newview/llfloaternamedesc.cpp mode change 100644 => 100755 indra/newview/llfloaternamedesc.h mode change 100644 => 100755 indra/newview/llfloaternotificationsconsole.cpp mode change 100644 => 100755 indra/newview/llfloaternotificationsconsole.h mode change 100644 => 100755 indra/newview/llfloaterobjectweights.cpp mode change 100644 => 100755 indra/newview/llfloaterobjectweights.h mode change 100644 => 100755 indra/newview/llfloateropenobject.cpp mode change 100644 => 100755 indra/newview/llfloateropenobject.h mode change 100644 => 100755 indra/newview/llfloateroutbox.cpp mode change 100644 => 100755 indra/newview/llfloateroutbox.h mode change 100644 => 100755 indra/newview/llfloaterpathfindingcharacters.cpp mode change 100644 => 100755 indra/newview/llfloaterpathfindingcharacters.h mode change 100644 => 100755 indra/newview/llfloaterpathfindingconsole.cpp mode change 100644 => 100755 indra/newview/llfloaterpathfindingconsole.h mode change 100644 => 100755 indra/newview/llfloaterpathfindinglinksets.cpp mode change 100644 => 100755 indra/newview/llfloaterpathfindinglinksets.h mode change 100644 => 100755 indra/newview/llfloaterpathfindingobjects.cpp mode change 100644 => 100755 indra/newview/llfloaterpathfindingobjects.h mode change 100644 => 100755 indra/newview/llfloaterpay.cpp mode change 100644 => 100755 indra/newview/llfloaterpay.h mode change 100644 => 100755 indra/newview/llfloaterperms.cpp mode change 100644 => 100755 indra/newview/llfloaterperms.h mode change 100644 => 100755 indra/newview/llfloaterpostprocess.cpp mode change 100644 => 100755 indra/newview/llfloaterpostprocess.h mode change 100644 => 100755 indra/newview/llfloaterpreference.h mode change 100644 => 100755 indra/newview/llfloaterproperties.cpp mode change 100644 => 100755 indra/newview/llfloaterproperties.h mode change 100644 => 100755 indra/newview/llfloaterregiondebugconsole.cpp mode change 100644 => 100755 indra/newview/llfloaterregiondebugconsole.h mode change 100644 => 100755 indra/newview/llfloaterregioninfo.cpp mode change 100644 => 100755 indra/newview/llfloaterregioninfo.h mode change 100644 => 100755 indra/newview/llfloaterreporter.cpp mode change 100644 => 100755 indra/newview/llfloaterreporter.h mode change 100644 => 100755 indra/newview/llfloaterscriptdebug.cpp mode change 100644 => 100755 indra/newview/llfloaterscriptdebug.h mode change 100644 => 100755 indra/newview/llfloaterscriptlimits.cpp mode change 100644 => 100755 indra/newview/llfloaterscriptlimits.h mode change 100644 => 100755 indra/newview/llfloatersearch.cpp mode change 100644 => 100755 indra/newview/llfloatersearch.h mode change 100644 => 100755 indra/newview/llfloatersellland.cpp mode change 100644 => 100755 indra/newview/llfloatersellland.h mode change 100644 => 100755 indra/newview/llfloatersettingsdebug.cpp mode change 100644 => 100755 indra/newview/llfloatersettingsdebug.h mode change 100644 => 100755 indra/newview/llfloatersidepanelcontainer.cpp mode change 100644 => 100755 indra/newview/llfloatersidepanelcontainer.h mode change 100644 => 100755 indra/newview/llfloatersnapshot.cpp mode change 100644 => 100755 indra/newview/llfloatersnapshot.h mode change 100644 => 100755 indra/newview/llfloatersounddevices.cpp mode change 100644 => 100755 indra/newview/llfloatersounddevices.h mode change 100644 => 100755 indra/newview/llfloaterspellchecksettings.cpp mode change 100644 => 100755 indra/newview/llfloaterspellchecksettings.h mode change 100644 => 100755 indra/newview/llfloatertelehub.cpp mode change 100644 => 100755 indra/newview/llfloatertelehub.h mode change 100644 => 100755 indra/newview/llfloatertestinspectors.cpp mode change 100644 => 100755 indra/newview/llfloatertestinspectors.h mode change 100644 => 100755 indra/newview/llfloatertestlistview.cpp mode change 100644 => 100755 indra/newview/llfloatertestlistview.h mode change 100644 => 100755 indra/newview/llfloatertexturefetchdebugger.cpp mode change 100644 => 100755 indra/newview/llfloatertexturefetchdebugger.h mode change 100644 => 100755 indra/newview/llfloatertools.cpp mode change 100644 => 100755 indra/newview/llfloatertools.h mode change 100644 => 100755 indra/newview/llfloatertopobjects.cpp mode change 100644 => 100755 indra/newview/llfloatertopobjects.h mode change 100644 => 100755 indra/newview/llfloatertos.cpp mode change 100644 => 100755 indra/newview/llfloatertos.h mode change 100644 => 100755 indra/newview/llfloatertoybox.cpp mode change 100644 => 100755 indra/newview/llfloatertoybox.h mode change 100644 => 100755 indra/newview/llfloatertranslationsettings.cpp mode change 100644 => 100755 indra/newview/llfloatertranslationsettings.h mode change 100644 => 100755 indra/newview/llfloateruipreview.cpp mode change 100644 => 100755 indra/newview/llfloateruipreview.h mode change 100644 => 100755 indra/newview/llfloaterurlentry.cpp mode change 100644 => 100755 indra/newview/llfloaterurlentry.h mode change 100644 => 100755 indra/newview/llfloatervoiceeffect.cpp mode change 100644 => 100755 indra/newview/llfloatervoiceeffect.h mode change 100644 => 100755 indra/newview/llfloatervoicevolume.cpp mode change 100644 => 100755 indra/newview/llfloatervoicevolume.h mode change 100644 => 100755 indra/newview/llfloaterwebcontent.cpp mode change 100644 => 100755 indra/newview/llfloaterwebcontent.h mode change 100644 => 100755 indra/newview/llfloaterwebprofile.cpp mode change 100644 => 100755 indra/newview/llfloaterwebprofile.h mode change 100644 => 100755 indra/newview/llfloaterwhitelistentry.cpp mode change 100644 => 100755 indra/newview/llfloaterwhitelistentry.h mode change 100644 => 100755 indra/newview/llfloaterwindowsize.cpp mode change 100644 => 100755 indra/newview/llfloaterwindowsize.h mode change 100644 => 100755 indra/newview/llfloaterworldmap.h mode change 100644 => 100755 indra/newview/llfolderviewmodelinventory.cpp mode change 100644 => 100755 indra/newview/llfolderviewmodelinventory.h mode change 100644 => 100755 indra/newview/llfollowcam.cpp mode change 100644 => 100755 indra/newview/llfollowcam.h mode change 100644 => 100755 indra/newview/llfriendcard.cpp mode change 100644 => 100755 indra/newview/llfriendcard.h mode change 100644 => 100755 indra/newview/llgesturelistener.cpp mode change 100644 => 100755 indra/newview/llgesturelistener.h mode change 100644 => 100755 indra/newview/llgesturemgr.cpp mode change 100644 => 100755 indra/newview/llgesturemgr.h mode change 100644 => 100755 indra/newview/llgiveinventory.cpp mode change 100644 => 100755 indra/newview/llgiveinventory.h mode change 100644 => 100755 indra/newview/llglsandbox.cpp mode change 100644 => 100755 indra/newview/llgroupactions.cpp mode change 100644 => 100755 indra/newview/llgroupactions.h mode change 100644 => 100755 indra/newview/llgroupiconctrl.cpp mode change 100644 => 100755 indra/newview/llgroupiconctrl.h mode change 100644 => 100755 indra/newview/llgrouplist.cpp mode change 100644 => 100755 indra/newview/llgrouplist.h mode change 100644 => 100755 indra/newview/llgroupmgr.cpp mode change 100644 => 100755 indra/newview/llgroupmgr.h mode change 100644 => 100755 indra/newview/llhints.cpp mode change 100644 => 100755 indra/newview/llhints.h mode change 100644 => 100755 indra/newview/llhomelocationresponder.cpp mode change 100644 => 100755 indra/newview/llhomelocationresponder.h mode change 100644 => 100755 indra/newview/llhudeffect.cpp mode change 100644 => 100755 indra/newview/llhudeffect.h mode change 100644 => 100755 indra/newview/llhudeffectbeam.cpp mode change 100644 => 100755 indra/newview/llhudeffectbeam.h mode change 100644 => 100755 indra/newview/llhudeffectblob.cpp mode change 100644 => 100755 indra/newview/llhudeffectblob.h mode change 100644 => 100755 indra/newview/llhudeffectlookat.cpp mode change 100644 => 100755 indra/newview/llhudeffectlookat.h mode change 100644 => 100755 indra/newview/llhudeffectpointat.cpp mode change 100644 => 100755 indra/newview/llhudeffectpointat.h mode change 100644 => 100755 indra/newview/llhudeffecttrail.cpp mode change 100644 => 100755 indra/newview/llhudeffecttrail.h mode change 100644 => 100755 indra/newview/llhudicon.cpp mode change 100644 => 100755 indra/newview/llhudicon.h mode change 100644 => 100755 indra/newview/llhudmanager.cpp mode change 100644 => 100755 indra/newview/llhudmanager.h mode change 100644 => 100755 indra/newview/llhudnametag.cpp mode change 100644 => 100755 indra/newview/llhudnametag.h mode change 100644 => 100755 indra/newview/llhudobject.cpp mode change 100644 => 100755 indra/newview/llhudobject.h mode change 100644 => 100755 indra/newview/llhudrender.cpp mode change 100644 => 100755 indra/newview/llhudrender.h mode change 100644 => 100755 indra/newview/llhudtext.cpp mode change 100644 => 100755 indra/newview/llhudtext.h mode change 100644 => 100755 indra/newview/llhudview.cpp mode change 100644 => 100755 indra/newview/llhudview.h mode change 100644 => 100755 indra/newview/llimhandler.cpp mode change 100644 => 100755 indra/newview/llimpanel.cpp mode change 100644 => 100755 indra/newview/llimpanel.h mode change 100644 => 100755 indra/newview/llimview.cpp mode change 100644 => 100755 indra/newview/llimview.h mode change 100644 => 100755 indra/newview/llinspect.cpp mode change 100644 => 100755 indra/newview/llinspect.h mode change 100644 => 100755 indra/newview/llinspectavatar.cpp mode change 100644 => 100755 indra/newview/llinspectavatar.h mode change 100644 => 100755 indra/newview/llinspectgroup.cpp mode change 100644 => 100755 indra/newview/llinspectgroup.h mode change 100644 => 100755 indra/newview/llinspectobject.cpp mode change 100644 => 100755 indra/newview/llinspectobject.h mode change 100644 => 100755 indra/newview/llinspectremoteobject.cpp mode change 100644 => 100755 indra/newview/llinspectremoteobject.h mode change 100644 => 100755 indra/newview/llinspecttoast.cpp mode change 100644 => 100755 indra/newview/llinspecttoast.h mode change 100644 => 100755 indra/newview/llinventoryactions.h mode change 100644 => 100755 indra/newview/llinventorybridge.cpp mode change 100644 => 100755 indra/newview/llinventorybridge.h mode change 100644 => 100755 indra/newview/llinventoryclipboard.cpp mode change 100644 => 100755 indra/newview/llinventoryclipboard.h mode change 100644 => 100755 indra/newview/llinventoryfilter.cpp mode change 100644 => 100755 indra/newview/llinventoryfilter.h mode change 100644 => 100755 indra/newview/llinventoryfunctions.cpp mode change 100644 => 100755 indra/newview/llinventoryfunctions.h mode change 100644 => 100755 indra/newview/llinventoryicon.cpp mode change 100644 => 100755 indra/newview/llinventoryicon.h mode change 100644 => 100755 indra/newview/llinventoryitemslist.cpp mode change 100644 => 100755 indra/newview/llinventoryitemslist.h mode change 100644 => 100755 indra/newview/llinventorylistitem.cpp mode change 100644 => 100755 indra/newview/llinventorylistitem.h mode change 100644 => 100755 indra/newview/llinventorymodel.cpp mode change 100644 => 100755 indra/newview/llinventorymodel.h mode change 100644 => 100755 indra/newview/llinventorymodelbackgroundfetch.cpp mode change 100644 => 100755 indra/newview/llinventorymodelbackgroundfetch.h mode change 100644 => 100755 indra/newview/llinventoryobserver.cpp mode change 100644 => 100755 indra/newview/llinventoryobserver.h mode change 100644 => 100755 indra/newview/llinventorypanel.cpp mode change 100644 => 100755 indra/newview/llinventorypanel.h mode change 100644 => 100755 indra/newview/lljoystickbutton.cpp mode change 100644 => 100755 indra/newview/lljoystickbutton.h mode change 100644 => 100755 indra/newview/lllandmarkactions.cpp mode change 100644 => 100755 indra/newview/lllandmarkactions.h mode change 100644 => 100755 indra/newview/lllandmarklist.cpp mode change 100644 => 100755 indra/newview/lllandmarklist.h mode change 100644 => 100755 indra/newview/lllightconstants.h mode change 100644 => 100755 indra/newview/lllistbrowser.cpp mode change 100644 => 100755 indra/newview/lllistbrowser.h mode change 100644 => 100755 indra/newview/lllistcontextmenu.cpp mode change 100644 => 100755 indra/newview/lllistcontextmenu.h mode change 100644 => 100755 indra/newview/lllistview.cpp mode change 100644 => 100755 indra/newview/lllistview.h mode change 100644 => 100755 indra/newview/lllocalbitmaps.cpp mode change 100644 => 100755 indra/newview/lllocalbitmaps.h mode change 100644 => 100755 indra/newview/lllocaltextureobject.cpp mode change 100644 => 100755 indra/newview/lllocaltextureobject.h mode change 100644 => 100755 indra/newview/lllocationhistory.cpp mode change 100644 => 100755 indra/newview/lllocationhistory.h mode change 100644 => 100755 indra/newview/lllocationinputctrl.cpp mode change 100644 => 100755 indra/newview/lllocationinputctrl.h mode change 100644 => 100755 indra/newview/lllogchat.cpp mode change 100644 => 100755 indra/newview/lllogchat.h mode change 100644 => 100755 indra/newview/llloginhandler.cpp mode change 100644 => 100755 indra/newview/llloginhandler.h mode change 100644 => 100755 indra/newview/lllogininstance.cpp mode change 100644 => 100755 indra/newview/lllogininstance.h mode change 100644 => 100755 indra/newview/lllookshistorypanel.h mode change 100644 => 100755 indra/newview/llmachineid.cpp mode change 100644 => 100755 indra/newview/llmachineid.h mode change 100644 => 100755 indra/newview/llmainlooprepeater.cpp mode change 100644 => 100755 indra/newview/llmainlooprepeater.h mode change 100644 => 100755 indra/newview/llmanip.cpp mode change 100644 => 100755 indra/newview/llmanip.h mode change 100644 => 100755 indra/newview/llmaniprotate.cpp mode change 100644 => 100755 indra/newview/llmaniprotate.h mode change 100644 => 100755 indra/newview/llmanipscale.cpp mode change 100644 => 100755 indra/newview/llmanipscale.h mode change 100644 => 100755 indra/newview/llmaniptranslate.cpp mode change 100644 => 100755 indra/newview/llmaniptranslate.h mode change 100644 => 100755 indra/newview/llmarketplacefunctions.cpp mode change 100644 => 100755 indra/newview/llmarketplacefunctions.h mode change 100644 => 100755 indra/newview/llmarketplacenotifications.cpp mode change 100644 => 100755 indra/newview/llmarketplacenotifications.h mode change 100644 => 100755 indra/newview/llmediactrl.cpp mode change 100644 => 100755 indra/newview/llmediactrl.h mode change 100644 => 100755 indra/newview/llmediadataclient.cpp mode change 100644 => 100755 indra/newview/llmediadataclient.h mode change 100644 => 100755 indra/newview/llmenuoptionpathfindingrebakenavmesh.cpp mode change 100644 => 100755 indra/newview/llmenuoptionpathfindingrebakenavmesh.h mode change 100644 => 100755 indra/newview/llmeshrepository.h mode change 100644 => 100755 indra/newview/llmimetypes.cpp mode change 100644 => 100755 indra/newview/llmimetypes.h mode change 100644 => 100755 indra/newview/llmorphview.cpp mode change 100644 => 100755 indra/newview/llmorphview.h mode change 100644 => 100755 indra/newview/llmoveview.cpp mode change 100644 => 100755 indra/newview/llmoveview.h mode change 100644 => 100755 indra/newview/llmutelist.cpp mode change 100644 => 100755 indra/newview/llmutelist.h mode change 100644 => 100755 indra/newview/llnamebox.cpp mode change 100644 => 100755 indra/newview/llnamebox.h mode change 100644 => 100755 indra/newview/llnameeditor.cpp mode change 100644 => 100755 indra/newview/llnameeditor.h mode change 100644 => 100755 indra/newview/llnamelistctrl.cpp mode change 100644 => 100755 indra/newview/llnamelistctrl.h mode change 100644 => 100755 indra/newview/llnavigationbar.cpp mode change 100644 => 100755 indra/newview/llnavigationbar.h mode change 100644 => 100755 indra/newview/llnetmap.cpp mode change 100644 => 100755 indra/newview/llnetmap.h mode change 100644 => 100755 indra/newview/llnotificationalerthandler.cpp mode change 100644 => 100755 indra/newview/llnotificationgrouphandler.cpp mode change 100644 => 100755 indra/newview/llnotificationhandler.h mode change 100644 => 100755 indra/newview/llnotificationhandlerutil.cpp mode change 100644 => 100755 indra/newview/llnotificationhinthandler.cpp mode change 100644 => 100755 indra/newview/llnotificationmanager.cpp mode change 100644 => 100755 indra/newview/llnotificationmanager.h mode change 100644 => 100755 indra/newview/llnotificationofferhandler.cpp mode change 100644 => 100755 indra/newview/llnotificationscripthandler.cpp mode change 100644 => 100755 indra/newview/llnotificationstorage.cpp mode change 100644 => 100755 indra/newview/llnotificationstorage.h mode change 100644 => 100755 indra/newview/llnotificationtiphandler.cpp mode change 100644 => 100755 indra/newview/lloutfitobserver.cpp mode change 100644 => 100755 indra/newview/lloutfitobserver.h mode change 100644 => 100755 indra/newview/lloutfitslist.cpp mode change 100644 => 100755 indra/newview/lloutfitslist.h mode change 100644 => 100755 indra/newview/lloutputmonitorctrl.cpp mode change 100644 => 100755 indra/newview/lloutputmonitorctrl.h mode change 100644 => 100755 indra/newview/llpanelappearancetab.cpp mode change 100644 => 100755 indra/newview/llpanelappearancetab.h mode change 100644 => 100755 indra/newview/llpanelavatar.cpp mode change 100644 => 100755 indra/newview/llpanelavatar.h mode change 100644 => 100755 indra/newview/llpanelavatartag.cpp mode change 100644 => 100755 indra/newview/llpanelavatartag.h mode change 100644 => 100755 indra/newview/llpanelblockedlist.cpp mode change 100644 => 100755 indra/newview/llpanelblockedlist.h mode change 100644 => 100755 indra/newview/llpanelclassified.cpp mode change 100644 => 100755 indra/newview/llpanelclassified.h mode change 100644 => 100755 indra/newview/llpanelcontents.cpp mode change 100644 => 100755 indra/newview/llpanelcontents.h mode change 100644 => 100755 indra/newview/llpaneleditwearable.cpp mode change 100644 => 100755 indra/newview/llpaneleditwearable.h mode change 100644 => 100755 indra/newview/llpanelface.cpp mode change 100644 => 100755 indra/newview/llpanelface.h mode change 100644 => 100755 indra/newview/llpanelgenerictip.cpp mode change 100644 => 100755 indra/newview/llpanelgenerictip.h mode change 100644 => 100755 indra/newview/llpanelgroup.cpp mode change 100644 => 100755 indra/newview/llpanelgroup.h mode change 100644 => 100755 indra/newview/llpanelgroupgeneral.cpp mode change 100644 => 100755 indra/newview/llpanelgroupgeneral.h mode change 100644 => 100755 indra/newview/llpanelgroupinvite.cpp mode change 100644 => 100755 indra/newview/llpanelgroupinvite.h mode change 100644 => 100755 indra/newview/llpanelgrouplandmoney.cpp mode change 100644 => 100755 indra/newview/llpanelgrouplandmoney.h mode change 100644 => 100755 indra/newview/llpanelgroupnotices.cpp mode change 100644 => 100755 indra/newview/llpanelgroupnotices.h mode change 100644 => 100755 indra/newview/llpanelgrouproles.cpp mode change 100644 => 100755 indra/newview/llpanelgrouproles.h mode change 100644 => 100755 indra/newview/llpanelhome.cpp mode change 100644 => 100755 indra/newview/llpanelhome.h mode change 100644 => 100755 indra/newview/llpanelimcontrolpanel.cpp mode change 100644 => 100755 indra/newview/llpanelimcontrolpanel.h mode change 100644 => 100755 indra/newview/llpanelland.cpp mode change 100644 => 100755 indra/newview/llpanelland.h mode change 100644 => 100755 indra/newview/llpanellandaudio.cpp mode change 100644 => 100755 indra/newview/llpanellandaudio.h mode change 100644 => 100755 indra/newview/llpanellandmarkinfo.cpp mode change 100644 => 100755 indra/newview/llpanellandmarkinfo.h mode change 100644 => 100755 indra/newview/llpanellandmarks.cpp mode change 100644 => 100755 indra/newview/llpanellandmarks.h mode change 100644 => 100755 indra/newview/llpanellandmedia.cpp mode change 100644 => 100755 indra/newview/llpanellandmedia.h mode change 100644 => 100755 indra/newview/llpanellogin.cpp mode change 100644 => 100755 indra/newview/llpanellogin.h mode change 100644 => 100755 indra/newview/llpanelloginlistener.cpp mode change 100644 => 100755 indra/newview/llpanelloginlistener.h mode change 100644 => 100755 indra/newview/llpanelmaininventory.cpp mode change 100644 => 100755 indra/newview/llpanelmaininventory.h mode change 100644 => 100755 indra/newview/llpanelmarketplaceinbox.cpp mode change 100644 => 100755 indra/newview/llpanelmarketplaceinbox.h mode change 100644 => 100755 indra/newview/llpanelmarketplaceinboxinventory.cpp mode change 100644 => 100755 indra/newview/llpanelmarketplaceinboxinventory.h mode change 100644 => 100755 indra/newview/llpanelme.cpp mode change 100644 => 100755 indra/newview/llpanelme.h mode change 100644 => 100755 indra/newview/llpanelmediasettingsgeneral.cpp mode change 100644 => 100755 indra/newview/llpanelmediasettingsgeneral.h mode change 100644 => 100755 indra/newview/llpanelmediasettingspermissions.cpp mode change 100644 => 100755 indra/newview/llpanelmediasettingspermissions.h mode change 100644 => 100755 indra/newview/llpanelmediasettingssecurity.cpp mode change 100644 => 100755 indra/newview/llpanelmediasettingssecurity.h mode change 100644 => 100755 indra/newview/llpanelnearbymedia.cpp mode change 100644 => 100755 indra/newview/llpanelnearbymedia.h mode change 100644 => 100755 indra/newview/llpanelobject.cpp mode change 100644 => 100755 indra/newview/llpanelobject.h mode change 100644 => 100755 indra/newview/llpanelobjectinventory.cpp mode change 100644 => 100755 indra/newview/llpanelobjectinventory.h mode change 100644 => 100755 indra/newview/llpanelonlinestatus.cpp mode change 100644 => 100755 indra/newview/llpanelonlinestatus.h mode change 100644 => 100755 indra/newview/llpaneloutfitedit.cpp mode change 100644 => 100755 indra/newview/llpaneloutfitedit.h mode change 100644 => 100755 indra/newview/llpaneloutfitsinventory.cpp mode change 100644 => 100755 indra/newview/llpaneloutfitsinventory.h mode change 100644 => 100755 indra/newview/llpanelpeople.cpp mode change 100644 => 100755 indra/newview/llpanelpeople.h mode change 100644 => 100755 indra/newview/llpanelpeoplemenus.cpp mode change 100644 => 100755 indra/newview/llpanelpeoplemenus.h mode change 100644 => 100755 indra/newview/llpanelpermissions.cpp mode change 100644 => 100755 indra/newview/llpanelpermissions.h mode change 100644 => 100755 indra/newview/llpanelpick.cpp mode change 100644 => 100755 indra/newview/llpanelpick.h mode change 100644 => 100755 indra/newview/llpanelplaceinfo.cpp mode change 100644 => 100755 indra/newview/llpanelplaceinfo.h mode change 100644 => 100755 indra/newview/llpanelplaceprofile.cpp mode change 100644 => 100755 indra/newview/llpanelplaceprofile.h mode change 100644 => 100755 indra/newview/llpanelplaces.cpp mode change 100644 => 100755 indra/newview/llpanelplaces.h mode change 100644 => 100755 indra/newview/llpanelplacestab.cpp mode change 100644 => 100755 indra/newview/llpanelplacestab.h mode change 100644 => 100755 indra/newview/llpanelprimmediacontrols.cpp mode change 100644 => 100755 indra/newview/llpanelprimmediacontrols.h mode change 100644 => 100755 indra/newview/llpanelsnapshot.cpp mode change 100644 => 100755 indra/newview/llpanelsnapshot.h mode change 100644 => 100755 indra/newview/llpanelsnapshotinventory.cpp mode change 100644 => 100755 indra/newview/llpanelsnapshotlocal.cpp mode change 100644 => 100755 indra/newview/llpanelsnapshotoptions.cpp mode change 100644 => 100755 indra/newview/llpanelsnapshotpostcard.cpp mode change 100644 => 100755 indra/newview/llpanelsnapshotprofile.cpp mode change 100644 => 100755 indra/newview/llpanelteleporthistory.cpp mode change 100644 => 100755 indra/newview/llpanelteleporthistory.h mode change 100644 => 100755 indra/newview/llpaneltiptoast.cpp mode change 100644 => 100755 indra/newview/llpaneltiptoast.h mode change 100644 => 100755 indra/newview/llpaneltopinfobar.cpp mode change 100644 => 100755 indra/newview/llpaneltopinfobar.h mode change 100644 => 100755 indra/newview/llpanelvoicedevicesettings.cpp mode change 100644 => 100755 indra/newview/llpanelvoicedevicesettings.h mode change 100644 => 100755 indra/newview/llpanelvoiceeffect.cpp mode change 100644 => 100755 indra/newview/llpanelvoiceeffect.h mode change 100644 => 100755 indra/newview/llpanelvolume.cpp mode change 100644 => 100755 indra/newview/llpanelvolume.h mode change 100644 => 100755 indra/newview/llpanelvolumepulldown.cpp mode change 100644 => 100755 indra/newview/llpanelvolumepulldown.h mode change 100644 => 100755 indra/newview/llpanelwearing.cpp mode change 100644 => 100755 indra/newview/llpanelwearing.h mode change 100644 => 100755 indra/newview/llparcelselection.cpp mode change 100644 => 100755 indra/newview/llparcelselection.h mode change 100644 => 100755 indra/newview/llparticipantlist.cpp mode change 100644 => 100755 indra/newview/llparticipantlist.h mode change 100644 => 100755 indra/newview/llpatchvertexarray.cpp mode change 100644 => 100755 indra/newview/llpatchvertexarray.h mode change 100644 => 100755 indra/newview/llpathfindingcharacter.cpp mode change 100644 => 100755 indra/newview/llpathfindingcharacter.h mode change 100644 => 100755 indra/newview/llpathfindingcharacterlist.cpp mode change 100644 => 100755 indra/newview/llpathfindingcharacterlist.h mode change 100644 => 100755 indra/newview/llpathfindinglinkset.cpp mode change 100644 => 100755 indra/newview/llpathfindinglinkset.h mode change 100644 => 100755 indra/newview/llpathfindinglinksetlist.cpp mode change 100644 => 100755 indra/newview/llpathfindinglinksetlist.h mode change 100644 => 100755 indra/newview/llpathfindingmanager.cpp mode change 100644 => 100755 indra/newview/llpathfindingmanager.h mode change 100644 => 100755 indra/newview/llpathfindingnavmesh.cpp mode change 100644 => 100755 indra/newview/llpathfindingnavmesh.h mode change 100644 => 100755 indra/newview/llpathfindingnavmeshstatus.cpp mode change 100644 => 100755 indra/newview/llpathfindingnavmeshstatus.h mode change 100644 => 100755 indra/newview/llpathfindingnavmeshzone.cpp mode change 100644 => 100755 indra/newview/llpathfindingnavmeshzone.h mode change 100644 => 100755 indra/newview/llpathfindingobject.cpp mode change 100644 => 100755 indra/newview/llpathfindingobject.h mode change 100644 => 100755 indra/newview/llpathfindingobjectlist.cpp mode change 100644 => 100755 indra/newview/llpathfindingobjectlist.h mode change 100644 => 100755 indra/newview/llpathfindingpathtool.cpp mode change 100644 => 100755 indra/newview/llpathfindingpathtool.h mode change 100644 => 100755 indra/newview/llpersistentnotificationstorage.cpp mode change 100644 => 100755 indra/newview/llpersistentnotificationstorage.h mode change 100644 => 100755 indra/newview/llphysicsmotion.cpp mode change 100644 => 100755 indra/newview/llphysicsmotion.h mode change 100644 => 100755 indra/newview/llphysicsshapebuilderutil.cpp mode change 100644 => 100755 indra/newview/llphysicsshapebuilderutil.h mode change 100644 => 100755 indra/newview/llplacesfolderview.cpp mode change 100644 => 100755 indra/newview/llplacesfolderview.h mode change 100644 => 100755 indra/newview/llplacesinventorybridge.cpp mode change 100644 => 100755 indra/newview/llplacesinventorybridge.h mode change 100644 => 100755 indra/newview/llplacesinventorypanel.cpp mode change 100644 => 100755 indra/newview/llplacesinventorypanel.h mode change 100644 => 100755 indra/newview/llpolymesh.cpp mode change 100644 => 100755 indra/newview/llpolymesh.h mode change 100644 => 100755 indra/newview/llpolymorph.cpp mode change 100644 => 100755 indra/newview/llpolymorph.h mode change 100644 => 100755 indra/newview/llpopupview.cpp mode change 100644 => 100755 indra/newview/llpopupview.h mode change 100644 => 100755 indra/newview/llpostcard.cpp mode change 100644 => 100755 indra/newview/llpostcard.h mode change 100644 => 100755 indra/newview/llpreview.cpp mode change 100644 => 100755 indra/newview/llpreview.h mode change 100644 => 100755 indra/newview/llpreviewanim.cpp mode change 100644 => 100755 indra/newview/llpreviewanim.h mode change 100644 => 100755 indra/newview/llpreviewgesture.cpp mode change 100644 => 100755 indra/newview/llpreviewgesture.h mode change 100644 => 100755 indra/newview/llpreviewnotecard.cpp mode change 100644 => 100755 indra/newview/llpreviewnotecard.h mode change 100644 => 100755 indra/newview/llpreviewscript.cpp mode change 100644 => 100755 indra/newview/llpreviewscript.h mode change 100644 => 100755 indra/newview/llpreviewsound.cpp mode change 100644 => 100755 indra/newview/llpreviewsound.h mode change 100644 => 100755 indra/newview/llpreviewtexture.cpp mode change 100644 => 100755 indra/newview/llpreviewtexture.h mode change 100644 => 100755 indra/newview/llproductinforequest.cpp mode change 100644 => 100755 indra/newview/llproductinforequest.h mode change 100644 => 100755 indra/newview/llprogressview.cpp mode change 100644 => 100755 indra/newview/llprogressview.h mode change 100644 => 100755 indra/newview/llrecentpeople.cpp mode change 100644 => 100755 indra/newview/llrecentpeople.h mode change 100644 => 100755 indra/newview/llregioninfomodel.cpp mode change 100644 => 100755 indra/newview/llregioninfomodel.h mode change 100644 => 100755 indra/newview/llregionposition.cpp mode change 100644 => 100755 indra/newview/llregionposition.h mode change 100644 => 100755 indra/newview/llremoteparcelrequest.cpp mode change 100644 => 100755 indra/newview/llremoteparcelrequest.h mode change 100644 => 100755 indra/newview/llresourcedata.h mode change 100644 => 100755 indra/newview/llrootview.h mode change 100644 => 100755 indra/newview/llsavedsettingsglue.cpp mode change 100644 => 100755 indra/newview/llsavedsettingsglue.h mode change 100644 => 100755 indra/newview/llsaveoutfitcombobtn.cpp mode change 100644 => 100755 indra/newview/llsaveoutfitcombobtn.h mode change 100644 => 100755 indra/newview/llsceneview.cpp mode change 100644 => 100755 indra/newview/llsceneview.h mode change 100644 => 100755 indra/newview/llscreenchannel.cpp mode change 100644 => 100755 indra/newview/llscreenchannel.h mode change 100644 => 100755 indra/newview/llscriptfloater.cpp mode change 100644 => 100755 indra/newview/llscriptfloater.h mode change 100644 => 100755 indra/newview/llscrollingpanelparam.cpp mode change 100644 => 100755 indra/newview/llscrollingpanelparam.h mode change 100644 => 100755 indra/newview/llscrollingpanelparambase.cpp mode change 100644 => 100755 indra/newview/llscrollingpanelparambase.h mode change 100644 => 100755 indra/newview/llsearchcombobox.cpp mode change 100644 => 100755 indra/newview/llsearchcombobox.h mode change 100644 => 100755 indra/newview/llsearchhistory.cpp mode change 100644 => 100755 indra/newview/llsearchhistory.h mode change 100644 => 100755 indra/newview/llsecapi.cpp mode change 100644 => 100755 indra/newview/llsecapi.h mode change 100644 => 100755 indra/newview/llsechandler_basic.cpp mode change 100644 => 100755 indra/newview/llsechandler_basic.h mode change 100644 => 100755 indra/newview/llselectmgr.cpp mode change 100644 => 100755 indra/newview/llselectmgr.h mode change 100644 => 100755 indra/newview/llshareavatarhandler.cpp mode change 100644 => 100755 indra/newview/llsidepanelappearance.cpp mode change 100644 => 100755 indra/newview/llsidepanelappearance.h mode change 100644 => 100755 indra/newview/llsidepanelinventory.cpp mode change 100644 => 100755 indra/newview/llsidepanelinventory.h mode change 100644 => 100755 indra/newview/llsidepanelinventorysubpanel.cpp mode change 100644 => 100755 indra/newview/llsidepanelinventorysubpanel.h mode change 100644 => 100755 indra/newview/llsidepaneliteminfo.cpp mode change 100644 => 100755 indra/newview/llsidepaneliteminfo.h mode change 100644 => 100755 indra/newview/llsidepaneltaskinfo.cpp mode change 100644 => 100755 indra/newview/llsidepaneltaskinfo.h mode change 100644 => 100755 indra/newview/llsidetraypanelcontainer.cpp mode change 100644 => 100755 indra/newview/llsidetraypanelcontainer.h mode change 100644 => 100755 indra/newview/llsimplestat.h mode change 100644 => 100755 indra/newview/llsky.cpp mode change 100644 => 100755 indra/newview/llsky.h mode change 100644 => 100755 indra/newview/llslurl.cpp mode change 100644 => 100755 indra/newview/llslurl.h mode change 100644 => 100755 indra/newview/llspatialpartition.cpp mode change 100644 => 100755 indra/newview/llspatialpartition.h mode change 100644 => 100755 indra/newview/llspeakers.cpp mode change 100644 => 100755 indra/newview/llspeakers.h mode change 100644 => 100755 indra/newview/llspeakingindicatormanager.cpp mode change 100644 => 100755 indra/newview/llspeakingindicatormanager.h mode change 100644 => 100755 indra/newview/llsplitbutton.cpp mode change 100644 => 100755 indra/newview/llsplitbutton.h mode change 100644 => 100755 indra/newview/llsprite.cpp mode change 100644 => 100755 indra/newview/llsprite.h mode change 100644 => 100755 indra/newview/llsrv.cpp mode change 100644 => 100755 indra/newview/llsrv.h mode change 100644 => 100755 indra/newview/llstartup.cpp mode change 100644 => 100755 indra/newview/llstartup.h mode change 100644 => 100755 indra/newview/llstartuplistener.cpp mode change 100644 => 100755 indra/newview/llstartuplistener.h mode change 100644 => 100755 indra/newview/llstatusbar.cpp mode change 100644 => 100755 indra/newview/llstatusbar.h mode change 100644 => 100755 indra/newview/llstylemap.cpp mode change 100644 => 100755 indra/newview/llstylemap.h mode change 100644 => 100755 indra/newview/llsurface.cpp mode change 100644 => 100755 indra/newview/llsurface.h mode change 100644 => 100755 indra/newview/llsurfacepatch.cpp mode change 100644 => 100755 indra/newview/llsurfacepatch.h mode change 100644 => 100755 indra/newview/llsyswellitem.cpp mode change 100644 => 100755 indra/newview/llsyswellitem.h mode change 100644 => 100755 indra/newview/llsyswellwindow.cpp mode change 100644 => 100755 indra/newview/llsyswellwindow.h mode change 100644 => 100755 indra/newview/lltable.h mode change 100644 => 100755 indra/newview/llteleporthistory.cpp mode change 100644 => 100755 indra/newview/llteleporthistory.h mode change 100644 => 100755 indra/newview/llteleporthistorystorage.cpp mode change 100644 => 100755 indra/newview/llteleporthistorystorage.h mode change 100644 => 100755 indra/newview/lltexglobalcolor.cpp mode change 100644 => 100755 indra/newview/lltexglobalcolor.h mode change 100644 => 100755 indra/newview/lltexlayer.cpp mode change 100644 => 100755 indra/newview/lltexlayer.h mode change 100644 => 100755 indra/newview/lltexlayerparams.cpp mode change 100644 => 100755 indra/newview/lltexlayerparams.h mode change 100644 => 100755 indra/newview/lltextureatlas.cpp mode change 100644 => 100755 indra/newview/lltextureatlas.h mode change 100644 => 100755 indra/newview/lltextureatlasmanager.cpp mode change 100644 => 100755 indra/newview/lltextureatlasmanager.h mode change 100644 => 100755 indra/newview/lltexturecache.cpp mode change 100644 => 100755 indra/newview/lltexturecache.h mode change 100644 => 100755 indra/newview/lltexturectrl.cpp mode change 100644 => 100755 indra/newview/lltexturectrl.h mode change 100644 => 100755 indra/newview/lltexturefetch.h mode change 100644 => 100755 indra/newview/lltextureinfo.cpp mode change 100644 => 100755 indra/newview/lltextureinfo.h mode change 100644 => 100755 indra/newview/lltextureinfodetails.cpp mode change 100644 => 100755 indra/newview/lltextureinfodetails.h mode change 100644 => 100755 indra/newview/lltexturestats.cpp mode change 100644 => 100755 indra/newview/lltexturestats.h mode change 100644 => 100755 indra/newview/lltexturestatsuploader.cpp mode change 100644 => 100755 indra/newview/lltexturestatsuploader.h mode change 100644 => 100755 indra/newview/lltextureview.cpp mode change 100644 => 100755 indra/newview/lltextureview.h mode change 100644 => 100755 indra/newview/lltoast.cpp mode change 100644 => 100755 indra/newview/lltoast.h mode change 100644 => 100755 indra/newview/lltoastalertpanel.cpp mode change 100644 => 100755 indra/newview/lltoastalertpanel.h mode change 100644 => 100755 indra/newview/lltoastgroupnotifypanel.cpp mode change 100644 => 100755 indra/newview/lltoastgroupnotifypanel.h mode change 100644 => 100755 indra/newview/lltoastimpanel.cpp mode change 100644 => 100755 indra/newview/lltoastimpanel.h mode change 100644 => 100755 indra/newview/lltoastnotifypanel.cpp mode change 100644 => 100755 indra/newview/lltoastnotifypanel.h mode change 100644 => 100755 indra/newview/lltoastpanel.cpp mode change 100644 => 100755 indra/newview/lltoastpanel.h mode change 100644 => 100755 indra/newview/lltoastscriptquestion.cpp mode change 100644 => 100755 indra/newview/lltoastscriptquestion.h mode change 100644 => 100755 indra/newview/lltoastscripttextbox.cpp mode change 100644 => 100755 indra/newview/lltoastscripttextbox.h mode change 100644 => 100755 indra/newview/lltool.cpp mode change 100644 => 100755 indra/newview/lltool.h mode change 100644 => 100755 indra/newview/lltoolbarview.cpp mode change 100644 => 100755 indra/newview/lltoolbarview.h mode change 100644 => 100755 indra/newview/lltoolbrush.cpp mode change 100644 => 100755 indra/newview/lltoolbrush.h mode change 100644 => 100755 indra/newview/lltoolcomp.cpp mode change 100644 => 100755 indra/newview/lltoolcomp.h mode change 100644 => 100755 indra/newview/lltooldraganddrop.cpp mode change 100644 => 100755 indra/newview/lltooldraganddrop.h mode change 100644 => 100755 indra/newview/lltoolface.cpp mode change 100644 => 100755 indra/newview/lltoolface.h mode change 100644 => 100755 indra/newview/lltoolfocus.cpp mode change 100644 => 100755 indra/newview/lltoolfocus.h mode change 100644 => 100755 indra/newview/lltoolgrab.cpp mode change 100644 => 100755 indra/newview/lltoolgrab.h mode change 100644 => 100755 indra/newview/lltoolgun.cpp mode change 100644 => 100755 indra/newview/lltoolgun.h mode change 100644 => 100755 indra/newview/lltoolindividual.cpp mode change 100644 => 100755 indra/newview/lltoolindividual.h mode change 100644 => 100755 indra/newview/lltoolmgr.cpp mode change 100644 => 100755 indra/newview/lltoolmgr.h mode change 100644 => 100755 indra/newview/lltoolmorph.cpp mode change 100644 => 100755 indra/newview/lltoolmorph.h mode change 100644 => 100755 indra/newview/lltoolobjpicker.cpp mode change 100644 => 100755 indra/newview/lltoolobjpicker.h mode change 100644 => 100755 indra/newview/lltoolpie.cpp mode change 100644 => 100755 indra/newview/lltoolpie.h mode change 100644 => 100755 indra/newview/lltoolpipette.cpp mode change 100644 => 100755 indra/newview/lltoolpipette.h mode change 100644 => 100755 indra/newview/lltoolplacer.cpp mode change 100644 => 100755 indra/newview/lltoolplacer.h mode change 100644 => 100755 indra/newview/lltoolselect.cpp mode change 100644 => 100755 indra/newview/lltoolselect.h mode change 100644 => 100755 indra/newview/lltoolselectland.cpp mode change 100644 => 100755 indra/newview/lltoolselectland.h mode change 100644 => 100755 indra/newview/lltoolselectrect.cpp mode change 100644 => 100755 indra/newview/lltoolselectrect.h mode change 100644 => 100755 indra/newview/lltoolview.cpp mode change 100644 => 100755 indra/newview/lltoolview.h mode change 100644 => 100755 indra/newview/lltracker.cpp mode change 100644 => 100755 indra/newview/lltracker.h mode change 100644 => 100755 indra/newview/lltransientdockablefloater.cpp mode change 100644 => 100755 indra/newview/lltransientdockablefloater.h mode change 100644 => 100755 indra/newview/lltransientfloatermgr.cpp mode change 100644 => 100755 indra/newview/lltransientfloatermgr.h mode change 100644 => 100755 indra/newview/lluiconstants.h mode change 100644 => 100755 indra/newview/lluilistener.cpp mode change 100644 => 100755 indra/newview/lluilistener.h mode change 100644 => 100755 indra/newview/lluploaddialog.cpp mode change 100644 => 100755 indra/newview/lluploaddialog.h mode change 100644 => 100755 indra/newview/lluploadfloaterobservers.cpp mode change 100644 => 100755 indra/newview/lluploadfloaterobservers.h mode change 100644 => 100755 indra/newview/llurl.cpp mode change 100644 => 100755 indra/newview/llurl.h mode change 100644 => 100755 indra/newview/llurldispatcher.cpp mode change 100644 => 100755 indra/newview/llurldispatcher.h mode change 100644 => 100755 indra/newview/llurldispatcherlistener.cpp mode change 100644 => 100755 indra/newview/llurldispatcherlistener.h mode change 100644 => 100755 indra/newview/llurlhistory.cpp mode change 100644 => 100755 indra/newview/llurlhistory.h mode change 100644 => 100755 indra/newview/llurllineeditorctrl.cpp mode change 100644 => 100755 indra/newview/llurllineeditorctrl.h mode change 100644 => 100755 indra/newview/llurlwhitelist.cpp mode change 100644 => 100755 indra/newview/llurlwhitelist.h mode change 100644 => 100755 indra/newview/llvectorperfoptions.cpp mode change 100644 => 100755 indra/newview/llvectorperfoptions.h mode change 100644 => 100755 indra/newview/llversioninfo.cpp mode change 100644 => 100755 indra/newview/llversioninfo.h mode change 100644 => 100755 indra/newview/llviewchildren.cpp mode change 100644 => 100755 indra/newview/llviewchildren.h mode change 100644 => 100755 indra/newview/llviewerassetstats.cpp mode change 100644 => 100755 indra/newview/llviewerassetstats.h mode change 100644 => 100755 indra/newview/llviewerassetstorage.cpp mode change 100644 => 100755 indra/newview/llviewerassetstorage.h mode change 100644 => 100755 indra/newview/llviewerassettype.cpp mode change 100644 => 100755 indra/newview/llviewerassettype.h mode change 100644 => 100755 indra/newview/llviewerattachmenu.cpp mode change 100644 => 100755 indra/newview/llviewerattachmenu.h mode change 100644 => 100755 indra/newview/llvieweraudio.cpp mode change 100644 => 100755 indra/newview/llvieweraudio.h mode change 100644 => 100755 indra/newview/llviewercamera.cpp mode change 100644 => 100755 indra/newview/llviewercamera.h mode change 100644 => 100755 indra/newview/llviewerchat.cpp mode change 100644 => 100755 indra/newview/llviewerchat.h mode change 100644 => 100755 indra/newview/llviewercontrol.cpp mode change 100644 => 100755 indra/newview/llviewercontrol.h mode change 100644 => 100755 indra/newview/llviewercontrollistener.cpp mode change 100644 => 100755 indra/newview/llviewercontrollistener.h mode change 100644 => 100755 indra/newview/llviewerdisplay.cpp mode change 100644 => 100755 indra/newview/llviewerdisplay.h mode change 100644 => 100755 indra/newview/llviewerdisplayname.cpp mode change 100644 => 100755 indra/newview/llviewerdisplayname.h mode change 100644 => 100755 indra/newview/llviewerfloaterreg.cpp mode change 100644 => 100755 indra/newview/llviewerfloaterreg.h mode change 100644 => 100755 indra/newview/llviewerfoldertype.h mode change 100644 => 100755 indra/newview/llviewergenericmessage.cpp mode change 100644 => 100755 indra/newview/llviewergenericmessage.h mode change 100644 => 100755 indra/newview/llviewergesture.cpp mode change 100644 => 100755 indra/newview/llviewergesture.h mode change 100644 => 100755 indra/newview/llviewerhelp.cpp mode change 100644 => 100755 indra/newview/llviewerhelp.h mode change 100644 => 100755 indra/newview/llviewerhelputil.cpp mode change 100644 => 100755 indra/newview/llviewerhelputil.h mode change 100644 => 100755 indra/newview/llviewerhome.cpp mode change 100644 => 100755 indra/newview/llviewerhome.h mode change 100644 => 100755 indra/newview/llviewerinventory.cpp mode change 100644 => 100755 indra/newview/llviewerinventory.h mode change 100644 => 100755 indra/newview/llviewerjoint.cpp mode change 100644 => 100755 indra/newview/llviewerjoint.h mode change 100644 => 100755 indra/newview/llviewerjointattachment.cpp mode change 100644 => 100755 indra/newview/llviewerjointattachment.h mode change 100644 => 100755 indra/newview/llviewerjointmesh.cpp mode change 100644 => 100755 indra/newview/llviewerjointmesh.h mode change 100644 => 100755 indra/newview/llviewerjoystick.cpp mode change 100644 => 100755 indra/newview/llviewerjoystick.h mode change 100644 => 100755 indra/newview/llviewerkeyboard.cpp mode change 100644 => 100755 indra/newview/llviewerkeyboard.h mode change 100644 => 100755 indra/newview/llviewerlayer.cpp mode change 100644 => 100755 indra/newview/llviewerlayer.h mode change 100644 => 100755 indra/newview/llviewermedia.cpp mode change 100644 => 100755 indra/newview/llviewermedia.h mode change 100644 => 100755 indra/newview/llviewermedia_streamingaudio.cpp mode change 100644 => 100755 indra/newview/llviewermedia_streamingaudio.h mode change 100644 => 100755 indra/newview/llviewermediafocus.cpp mode change 100644 => 100755 indra/newview/llviewermediafocus.h mode change 100644 => 100755 indra/newview/llviewermediaobserver.h mode change 100644 => 100755 indra/newview/llviewermenu.cpp mode change 100644 => 100755 indra/newview/llviewermenu.h mode change 100644 => 100755 indra/newview/llviewermenufile.cpp mode change 100644 => 100755 indra/newview/llviewermenufile.h mode change 100644 => 100755 indra/newview/llviewermessage.h mode change 100644 => 100755 indra/newview/llviewernetwork.cpp mode change 100644 => 100755 indra/newview/llviewernetwork.h mode change 100644 => 100755 indra/newview/llviewerobject.cpp mode change 100644 => 100755 indra/newview/llviewerobject.h mode change 100644 => 100755 indra/newview/llviewerobjectlist.cpp mode change 100644 => 100755 indra/newview/llviewerobjectlist.h mode change 100644 => 100755 indra/newview/llviewerparcelmedia.cpp mode change 100644 => 100755 indra/newview/llviewerparcelmedia.h mode change 100644 => 100755 indra/newview/llviewerparcelmediaautoplay.cpp mode change 100644 => 100755 indra/newview/llviewerparcelmediaautoplay.h mode change 100644 => 100755 indra/newview/llviewerparcelmgr.cpp mode change 100644 => 100755 indra/newview/llviewerparcelmgr.h mode change 100644 => 100755 indra/newview/llviewerparceloverlay.cpp mode change 100644 => 100755 indra/newview/llviewerparceloverlay.h mode change 100644 => 100755 indra/newview/llviewerpartsim.cpp mode change 100644 => 100755 indra/newview/llviewerpartsim.h mode change 100644 => 100755 indra/newview/llviewerpartsource.cpp mode change 100644 => 100755 indra/newview/llviewerpartsource.h mode change 100644 => 100755 indra/newview/llviewerprecompiledheaders.cpp mode change 100644 => 100755 indra/newview/llviewerprecompiledheaders.h mode change 100644 => 100755 indra/newview/llviewerregion.cpp mode change 100644 => 100755 indra/newview/llviewerregion.h mode change 100644 => 100755 indra/newview/llviewershadermgr.cpp mode change 100644 => 100755 indra/newview/llviewershadermgr.h mode change 100644 => 100755 indra/newview/llviewerstats.cpp mode change 100644 => 100755 indra/newview/llviewerstats.h mode change 100644 => 100755 indra/newview/llviewerstatsrecorder.cpp mode change 100644 => 100755 indra/newview/llviewerstatsrecorder.h mode change 100644 => 100755 indra/newview/llviewertexteditor.cpp mode change 100644 => 100755 indra/newview/llviewertexteditor.h mode change 100644 => 100755 indra/newview/llviewertexture.cpp mode change 100644 => 100755 indra/newview/llviewertexture.h mode change 100644 => 100755 indra/newview/llviewertextureanim.cpp mode change 100644 => 100755 indra/newview/llviewertextureanim.h mode change 100644 => 100755 indra/newview/llviewertexturelist.cpp mode change 100644 => 100755 indra/newview/llviewertexturelist.h mode change 100644 => 100755 indra/newview/llviewerthrottle.cpp mode change 100644 => 100755 indra/newview/llviewerthrottle.h mode change 100644 => 100755 indra/newview/llviewervisualparam.cpp mode change 100644 => 100755 indra/newview/llviewervisualparam.h mode change 100644 => 100755 indra/newview/llviewerwindow.h mode change 100644 => 100755 indra/newview/llviewerwindowlistener.cpp mode change 100644 => 100755 indra/newview/llviewerwindowlistener.h mode change 100644 => 100755 indra/newview/llvlcomposition.cpp mode change 100644 => 100755 indra/newview/llvlcomposition.h mode change 100644 => 100755 indra/newview/llvlmanager.cpp mode change 100644 => 100755 indra/newview/llvlmanager.h mode change 100644 => 100755 indra/newview/llvoavatar.cpp mode change 100644 => 100755 indra/newview/llvoavatar.h mode change 100644 => 100755 indra/newview/llvoavatardefines.cpp mode change 100644 => 100755 indra/newview/llvoavatardefines.h mode change 100644 => 100755 indra/newview/llvoavatarself.cpp mode change 100644 => 100755 indra/newview/llvoavatarself.h mode change 100644 => 100755 indra/newview/llvocache.cpp mode change 100644 => 100755 indra/newview/llvocache.h mode change 100644 => 100755 indra/newview/llvograss.cpp mode change 100644 => 100755 indra/newview/llvograss.h mode change 100644 => 100755 indra/newview/llvoground.cpp mode change 100644 => 100755 indra/newview/llvoground.h mode change 100644 => 100755 indra/newview/llvoicecallhandler.cpp mode change 100644 => 100755 indra/newview/llvoicechannel.cpp mode change 100644 => 100755 indra/newview/llvoicechannel.h mode change 100644 => 100755 indra/newview/llvoiceclient.cpp mode change 100644 => 100755 indra/newview/llvoiceclient.h mode change 100644 => 100755 indra/newview/llvoicevisualizer.cpp mode change 100644 => 100755 indra/newview/llvoicevisualizer.h mode change 100644 => 100755 indra/newview/llvoicevivox.cpp mode change 100644 => 100755 indra/newview/llvoicevivox.h mode change 100644 => 100755 indra/newview/llvoinventorylistener.cpp mode change 100644 => 100755 indra/newview/llvoinventorylistener.h mode change 100644 => 100755 indra/newview/llvopartgroup.cpp mode change 100644 => 100755 indra/newview/llvopartgroup.h mode change 100644 => 100755 indra/newview/llvosky.cpp mode change 100644 => 100755 indra/newview/llvosky.h mode change 100644 => 100755 indra/newview/llvosurfacepatch.cpp mode change 100644 => 100755 indra/newview/llvosurfacepatch.h mode change 100644 => 100755 indra/newview/llvotree.cpp mode change 100644 => 100755 indra/newview/llvotree.h mode change 100644 => 100755 indra/newview/llvotreenew.h mode change 100644 => 100755 indra/newview/llvovolume.cpp mode change 100644 => 100755 indra/newview/llvovolume.h mode change 100644 => 100755 indra/newview/llvowater.cpp mode change 100644 => 100755 indra/newview/llvowater.h mode change 100644 => 100755 indra/newview/llvowlsky.cpp mode change 100644 => 100755 indra/newview/llvowlsky.h mode change 100644 => 100755 indra/newview/llwatchdog.cpp mode change 100644 => 100755 indra/newview/llwatchdog.h mode change 100644 => 100755 indra/newview/llwaterparammanager.cpp mode change 100644 => 100755 indra/newview/llwaterparammanager.h mode change 100644 => 100755 indra/newview/llwaterparamset.cpp mode change 100644 => 100755 indra/newview/llwaterparamset.h mode change 100644 => 100755 indra/newview/llwearable.cpp mode change 100644 => 100755 indra/newview/llwearable.h mode change 100644 => 100755 indra/newview/llwearableitemslist.cpp mode change 100644 => 100755 indra/newview/llwearableitemslist.h mode change 100644 => 100755 indra/newview/llwearablelist.cpp mode change 100644 => 100755 indra/newview/llwearablelist.h mode change 100644 => 100755 indra/newview/llwearabletype.cpp mode change 100644 => 100755 indra/newview/llwearabletype.h mode change 100644 => 100755 indra/newview/llweb.cpp mode change 100644 => 100755 indra/newview/llweb.h mode change 100644 => 100755 indra/newview/llwebprofile.cpp mode change 100644 => 100755 indra/newview/llwebprofile.h mode change 100644 => 100755 indra/newview/llwebsharing.cpp mode change 100644 => 100755 indra/newview/llwebsharing.h mode change 100644 => 100755 indra/newview/llwind.cpp mode change 100644 => 100755 indra/newview/llwind.h mode change 100644 => 100755 indra/newview/llwindebug.cpp mode change 100644 => 100755 indra/newview/llwindebug.h mode change 100644 => 100755 indra/newview/llwindowlistener.cpp mode change 100644 => 100755 indra/newview/llwindowlistener.h mode change 100644 => 100755 indra/newview/llwlanimator.cpp mode change 100644 => 100755 indra/newview/llwlanimator.h mode change 100644 => 100755 indra/newview/llwldaycycle.cpp mode change 100644 => 100755 indra/newview/llwldaycycle.h mode change 100644 => 100755 indra/newview/llwlhandlers.cpp mode change 100644 => 100755 indra/newview/llwlhandlers.h mode change 100644 => 100755 indra/newview/llwlparammanager.cpp mode change 100644 => 100755 indra/newview/llwlparammanager.h mode change 100644 => 100755 indra/newview/llwlparamset.cpp mode change 100644 => 100755 indra/newview/llwlparamset.h mode change 100644 => 100755 indra/newview/llworld.cpp mode change 100644 => 100755 indra/newview/llworld.h mode change 100644 => 100755 indra/newview/llworldmap.cpp mode change 100644 => 100755 indra/newview/llworldmap.h mode change 100644 => 100755 indra/newview/llworldmapmessage.cpp mode change 100644 => 100755 indra/newview/llworldmapmessage.h mode change 100644 => 100755 indra/newview/llworldmapview.cpp mode change 100644 => 100755 indra/newview/llworldmapview.h mode change 100644 => 100755 indra/newview/llworldmipmap.cpp mode change 100644 => 100755 indra/newview/llworldmipmap.h mode change 100644 => 100755 indra/newview/llxmlrpclistener.cpp mode change 100644 => 100755 indra/newview/llxmlrpclistener.h mode change 100644 => 100755 indra/newview/llxmlrpctransaction.cpp mode change 100644 => 100755 indra/newview/llxmlrpctransaction.h mode change 100644 => 100755 indra/newview/macmain.h mode change 100644 => 100755 indra/newview/macutil_Prefix.h mode change 100644 => 100755 indra/newview/macview.r mode change 100644 => 100755 indra/newview/macview_Prefix.h mode change 100644 => 100755 indra/newview/nl.lproj/language.txt mode change 100644 => 100755 indra/newview/noise.cpp mode change 100644 => 100755 indra/newview/noise.h mode change 100644 => 100755 indra/newview/pipeline.cpp mode change 100644 => 100755 indra/newview/pipeline.h mode change 100644 => 100755 indra/newview/pl.lproj/language.txt mode change 100644 => 100755 indra/newview/pt.lproj/language.txt mode change 100644 => 100755 indra/newview/res-sdl/arrow.BMP mode change 100644 => 100755 indra/newview/res-sdl/arrowcop.BMP mode change 100644 => 100755 indra/newview/res-sdl/arrowcopmulti.BMP mode change 100644 => 100755 indra/newview/res-sdl/arrowdrag.BMP mode change 100644 => 100755 indra/newview/res-sdl/circleandline.BMP mode change 100644 => 100755 indra/newview/res-sdl/cross.BMP mode change 100644 => 100755 indra/newview/res-sdl/hand.BMP mode change 100644 => 100755 indra/newview/res-sdl/ibeam.BMP mode change 100644 => 100755 indra/newview/res-sdl/llarrow.BMP mode change 100644 => 100755 indra/newview/res-sdl/llarrowdrag.BMP mode change 100644 => 100755 indra/newview/res-sdl/llarrowdragmulti.BMP mode change 100644 => 100755 indra/newview/res-sdl/llarrowlocked.BMP mode change 100644 => 100755 indra/newview/res-sdl/llgrablocked.BMP mode change 100644 => 100755 indra/newview/res-sdl/llno.BMP mode change 100644 => 100755 indra/newview/res-sdl/llnolocked.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolcamera.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolcreate.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolfocus.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolgrab.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolland.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpan.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpathfinding.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpathfindingpathend.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpathfindingpathendadd.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpathfindingpathstart.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpathfindingpathstartadd.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolpipette.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolrotate.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolscale.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltooltranslate.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolzoomin.BMP mode change 100644 => 100755 indra/newview/res-sdl/lltoolzoomout.BMP mode change 100644 => 100755 indra/newview/res-sdl/sizenesw.BMP mode change 100644 => 100755 indra/newview/res-sdl/sizens.BMP mode change 100644 => 100755 indra/newview/res-sdl/sizenwse.BMP mode change 100644 => 100755 indra/newview/res-sdl/sizewe.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolbuy.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolmediaopen.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolopen.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolpause.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolpickobject.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolpickobject2.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolpickobject3.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolplay.BMP mode change 100644 => 100755 indra/newview/res-sdl/toolsit.BMP mode change 100644 => 100755 indra/newview/res-sdl/wait.BMP mode change 100644 => 100755 indra/newview/res-sdl/working.BMP mode change 100644 => 100755 indra/newview/res/arrow.cur mode change 100644 => 100755 indra/newview/res/arrowcop.cur mode change 100644 => 100755 indra/newview/res/arrowcopmulti.cur mode change 100644 => 100755 indra/newview/res/arrowdrag.cur mode change 100644 => 100755 indra/newview/res/bitmap2.bmp mode change 100644 => 100755 indra/newview/res/circleandline.cur mode change 100644 => 100755 indra/newview/res/have_artwork_bundle.marker mode change 100644 => 100755 indra/newview/res/icon1.ico mode change 100644 => 100755 indra/newview/res/install_icon.BMP mode change 100644 => 100755 indra/newview/res/llarrow.cur mode change 100644 => 100755 indra/newview/res/llarrowdrag.cur mode change 100644 => 100755 indra/newview/res/llarrowdragmulti.cur mode change 100644 => 100755 indra/newview/res/llarrowlocked.cur mode change 100644 => 100755 indra/newview/res/llgrablocked.cur mode change 100644 => 100755 indra/newview/res/llno.cur mode change 100644 => 100755 indra/newview/res/llnolocked.cur mode change 100644 => 100755 indra/newview/res/lltoolcamera.cur mode change 100644 => 100755 indra/newview/res/lltoolcreate.cur mode change 100644 => 100755 indra/newview/res/lltoolfocus.cur mode change 100644 => 100755 indra/newview/res/lltoolgrab.cur mode change 100644 => 100755 indra/newview/res/lltoolland.cur mode change 100644 => 100755 indra/newview/res/lltoolpan.cur mode change 100644 => 100755 indra/newview/res/lltoolpathfinding.cur mode change 100644 => 100755 indra/newview/res/lltoolpathfindingpathend.cur mode change 100644 => 100755 indra/newview/res/lltoolpathfindingpathendadd.cur mode change 100644 => 100755 indra/newview/res/lltoolpathfindingpathstart.cur mode change 100644 => 100755 indra/newview/res/lltoolpathfindingpathstartadd.cur mode change 100644 => 100755 indra/newview/res/lltoolpipette.cur mode change 100644 => 100755 indra/newview/res/lltoolrotate.cur mode change 100644 => 100755 indra/newview/res/lltoolscale.cur mode change 100644 => 100755 indra/newview/res/lltooltranslate.cur mode change 100644 => 100755 indra/newview/res/lltoolzoomin.cur mode change 100644 => 100755 indra/newview/res/lltoolzoomout.cur mode change 100644 => 100755 indra/newview/res/loginbackground.bmp mode change 100644 => 100755 indra/newview/res/resource.h mode change 100644 => 100755 indra/newview/res/toolbuy.cur mode change 100644 => 100755 indra/newview/res/toolmediaopen.cur mode change 100644 => 100755 indra/newview/res/toolopen.cur mode change 100644 => 100755 indra/newview/res/toolpause.cur mode change 100644 => 100755 indra/newview/res/toolpickobject.cur mode change 100644 => 100755 indra/newview/res/toolpickobject2.cur mode change 100644 => 100755 indra/newview/res/toolpickobject3.cur mode change 100644 => 100755 indra/newview/res/toolpipette.cur mode change 100644 => 100755 indra/newview/res/toolplay.cur mode change 100644 => 100755 indra/newview/res/toolsit.cur mode change 100644 => 100755 indra/newview/res/uninstall_icon.BMP mode change 100644 => 100755 indra/newview/res/viewerRes.rc mode change 100644 => 100755 indra/newview/ru.lproj/language.txt mode change 100644 => 100755 indra/newview/secondlife-i686.supp mode change 100644 => 100755 indra/newview/secondlife.icns mode change 100644 => 100755 indra/newview/secondlife_firstlook.icns mode change 100644 => 100755 indra/newview/skins/default/colors.xml mode change 100644 => 100755 indra/newview/skins/default/html/btn_purplepill_bg.png mode change 100644 => 100755 indra/newview/skins/default/html/da/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/de/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/de/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/en-us/help-offline/index.html mode change 100644 => 100755 indra/newview/skins/default/html/en-us/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/en-us/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/en-us/loading/sl_logo_rotate_black.gif mode change 100644 => 100755 indra/newview/skins/default/html/es/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/es/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/fr/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/fr/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/hu/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/it/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/ja/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/ja/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/ko/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/nl/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/pl/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/pt/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/pt/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/ru/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/tr/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/uk/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/html/unabletoconnect.png mode change 100644 => 100755 indra/newview/skins/default/html/zh/loading-error/index.html mode change 100644 => 100755 indra/newview/skins/default/html/zh/loading/loading.html mode change 100644 => 100755 indra/newview/skins/default/textures/Blank.png mode change 100644 => 100755 indra/newview/skins/default/textures/Rounded_Rect.png mode change 100644 => 100755 indra/newview/skins/default/textures/alpha_gradient.tga mode change 100644 => 100755 indra/newview/skins/default/textures/alpha_gradient_2d.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/arrow_down.tga mode change 100644 => 100755 indra/newview/skins/default/textures/arrow_up.tga mode change 100644 => 100755 indra/newview/skins/default/textures/avatar_thumb_bkgrnd.png mode change 100644 => 100755 indra/newview/skins/default/textures/badge_note.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/badge_ok.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/badge_warn.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Avatar_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_FreeCam_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Orbit_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Pan_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Back_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Back_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Eye_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Front_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Front_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Side_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Preset_Side_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Rotate_In.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Rotate_Out.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Tracking_In.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Cam_Tracking_Out.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/ChatBarHandle.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/DownArrow.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Mouselook_View_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Mouselook_View_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Move_Fly_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Move_Run_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Move_Walk_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Backward_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Backward_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Down_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Down_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Forward_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Forward_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Left_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Left_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Right_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Right_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_TurnLeft_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_TurnLeft_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_TurnRight_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_TurnRight_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Up_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Movement_Up_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Notices_Unread.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Object_View_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Object_View_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/PanOrbit_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Snapshot_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/Unread_Chiclet.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl1.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl2.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl3.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/VoicePTT_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/VoicePTT_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/WellButton_Lit.png mode change 100644 => 100755 indra/newview/skins/default/textures/bottomtray/WellButton_Lit_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Cone.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Cone_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Cube.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Cube_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Cylinder.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Cylinder_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Grass.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Grass_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Hemi_Cone.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Hemi_Cone_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Hemi_Cylinder.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Hemi_Cylinder_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Hemi_Sphere.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Hemi_Sphere_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Prism.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Prism_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Pyramid.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Pyramid_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Ring.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Ring_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Sphere.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Sphere_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Tetrahedron.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Tetrahedron_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Torus.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Torus_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Tree.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Tree_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Tube.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Object_Tube_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Tool_Create.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Tool_Dozer.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Tool_Face.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Tool_Grab.png mode change 100644 => 100755 indra/newview/skins/default/textures/build/Tool_Zoom.png mode change 100644 => 100755 indra/newview/skins/default/textures/button_anim_pause.tga mode change 100644 => 100755 indra/newview/skins/default/textures/button_anim_pause_selected.tga mode change 100644 => 100755 indra/newview/skins/default/textures/button_anim_play.tga mode change 100644 => 100755 indra/newview/skins/default/textures/button_anim_play_selected.tga mode change 100644 => 100755 indra/newview/skins/default/textures/checker.png mode change 100644 => 100755 indra/newview/skins/default/textures/cloud-particle.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/color_swatch_alpha.tga mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_ArrowClosed_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_ArrowClosed_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_ArrowOpened_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_ArrowOpened_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Accordion_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Container.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/TabTop_Left_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/TabTop_Left_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/TabTop_Middle_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/TabTop_Middle_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/TabTop_Right_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/TabTop_Right_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Left_Flash.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Left_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Left_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Left_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Middle_Flash.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Middle_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Middle_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Middle_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Right_Flash.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Right_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Right_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/containers/Toolbar_Right_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/crosshairs.tga mode change 100644 => 100755 indra/newview/skins/default/textures/default_land_picture.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/default_profile_picture.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/direction_arrow.tga mode change 100644 => 100755 indra/newview/skins/default/textures/down_arrow.png mode change 100644 => 100755 indra/newview/skins/default/textures/eye_button_active.tga mode change 100644 => 100755 indra/newview/skins/default/textures/eye_button_inactive.tga mode change 100644 => 100755 indra/newview/skins/default/textures/folder_arrow.tga mode change 100644 => 100755 indra/newview/skins/default/textures/foot_shadow.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/green_checkmark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icn_media_movie.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icn_media_web.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icon_avatar_offline.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icon_avatar_online.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icon_diurnal.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icon_for_sale_adult.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icon_top_pick.tga mode change 100644 => 100755 indra/newview/skins/default/textures/icons/AddItem_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/AddItem_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/AddItem_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/AudioMute_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/AudioMute_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Audio_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Audio_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/BackArrow_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Conv_log_inbox.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Copy.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/DownArrow_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Edit_Wrench.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/ExternalBrowser_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Female.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/ForSale_Badge.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/ForwardArrow_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/ForwardArrow_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Generic_Group.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Generic_Group_Large.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Generic_Object_Small.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Generic_Person.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Generic_Person_Large.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Hierarchy_View_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Hierarchy_View_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Icon_For_Sale.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Info.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Info_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Info_Small.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Alpha.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Animation.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_BodyShape.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_CallingCard.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Clothing.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Eye.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_FolderClosed.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_FolderOpen.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Gesture.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Gloves.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Hair.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Invalid.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Jacket.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Landmark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Link.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_LinkFolder.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_LinkItem.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_LookFolderClosed.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_LookFolderOpen.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_LostClosed.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_LostOpen.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Mesh.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Notecard.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Object.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Object_Multi.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Pants.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Physics.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Script.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Shirt.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Shoe.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Skin.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Skirt.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Snapshot.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Socks.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Sound.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_SysClosed.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_SysOpen.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Tattoo.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Texture.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_TrashClosed.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_TrashOpen.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Underpants.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Inv_Undershirt.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/List_View_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/List_View_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Lock.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Locked_Icon.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Male.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Microphone_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/MinusItem_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/MinusItem_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/MinusItem_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OptionsMenu_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OptionsMenu_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OptionsMenu_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_On_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Progress_1.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Progress_2.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Progress_3.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Progress_4.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Progress_5.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Progress_6.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Selected_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Selected_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/OutboxPush_Selected_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_BuildNo_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_BuildNo_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Build_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_DamageNo_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Damage_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Exp_Color.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_FlyNo_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_FlyNo_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Fly_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_ForSale_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Health_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_M_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_M_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_PG_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_PG_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_PushNo_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_PushNo_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Push_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_R_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_R_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_ScriptsNo_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Scripts_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_SeeAVsOff_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_SeeAVsOff_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_SeeAVsOn_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_SeeAVsOn_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_VoiceNo_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_VoiceNo_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Voice_Dark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Parcel_Voice_Light.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Pathfinding_Dirty.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Pathfinding_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Pause_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Pause_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Pause_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Person_Check.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Person_Star.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Play_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Play_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Play_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_1.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_10.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_11.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_12.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_2.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_3.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_4.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_5.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_6.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_7.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_8.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Progress_9.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Refresh_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/SL_Logo.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Search_Icon.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Shirt_Large.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Shop.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/SkipBackward_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/SkipForward_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/StopReload_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/StopReload_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Stop_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Enabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Progress_1.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Progress_2.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Progress_3.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Progress_4.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Progress_5.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Sync_Progress_6.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/TrashItem_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/TrashItem_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/TrashItem_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/UnZoom_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/UpArrow_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/VoicePTT_Lvl1.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/VoicePTT_Lvl2.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/VoicePTT_Lvl3.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/VoicePTT_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/VoicePTT_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Web_Profile_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/YouAreHere_Badge.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/Zoom_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/avaline_default_icon.jpg mode change 100644 => 100755 indra/newview/skins/default/textures/icons/back_arrow_off.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/back_arrow_over.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/back_arrow_press.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/check_mark.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/collapse_to_one_line.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/edit_mine.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/edit_theirs.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/expand_one_liner.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/nearby_chat_icon.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/object_icon.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/pop_up_caution.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/see_me_online.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/see_on_map.png mode change 100644 => 100755 indra/newview/skins/default/textures/icons/unknown_icon.png mode change 100644 => 100755 indra/newview/skins/default/textures/jump_left_in.tga mode change 100644 => 100755 indra/newview/skins/default/textures/jump_left_out.tga mode change 100644 => 100755 indra/newview/skins/default/textures/jump_right_in.tga mode change 100644 => 100755 indra/newview/skins/default/textures/jump_right_out.tga mode change 100644 => 100755 indra/newview/skins/default/textures/lag_status_critical.tga mode change 100644 => 100755 indra/newview/skins/default/textures/lag_status_good.tga mode change 100644 => 100755 indra/newview/skins/default/textures/lag_status_warning.tga mode change 100644 => 100755 indra/newview/skins/default/textures/legend.tga mode change 100644 => 100755 indra/newview/skins/default/textures/locked_image.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_16.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_32.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_8.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_above_32.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_below_32.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_unknown_32.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_avatar_you_32.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_event.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_home.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_infohub.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_telehub.tga mode change 100644 => 100755 indra/newview/skins/default/textures/map_track_16.tga mode change 100644 => 100755 indra/newview/skins/default/textures/menu_separator.png mode change 100644 => 100755 indra/newview/skins/default/textures/missing_asset.tga mode change 100644 => 100755 indra/newview/skins/default/textures/model_wizard/progress_bar_bg.png mode change 100644 => 100755 indra/newview/skins/default/textures/model_wizard/progress_light.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Arrow_Left_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Arrow_Right_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/BuyArrow_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/BuyArrow_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Favorite_Link_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Favorite_Star_Active.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Favorite_Star_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Favorite_Star_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Favorite_Star_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/FileMenu_Divider.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Flag.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Help_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Home_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Info_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Info_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Info_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Lock.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/NavBar_BG.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/NavBar_BG_NoFav_Bevel.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/NavBar_BG_NoNav_Bevel.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Row_Selection.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/Search.png mode change 100644 => 100755 indra/newview/skins/default/textures/navbar/separator.png mode change 100644 => 100755 indra/newview/skins/default/textures/notify_caution_icon.tga mode change 100644 => 100755 indra/newview/skins/default/textures/pixiesmall.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/red_x.png mode change 100644 => 100755 indra/newview/skins/default/textures/rounded_square.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/script_error.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/silhouette.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/slim_icon_16_viewer.tga mode change 100644 => 100755 indra/newview/skins/default/textures/snapshot_download.png mode change 100644 => 100755 indra/newview/skins/default/textures/snapshot_email.png mode change 100644 => 100755 indra/newview/skins/default/textures/spacer24.tga mode change 100644 => 100755 indra/newview/skins/default/textures/tabarea.tga mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/Activate_Checkmark.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Dock_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Dock_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Undock_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Undock_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_Close_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_Home_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_Me_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_Open_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_People_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_Places_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TabIcon_Things_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TaskPanel_Tab_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/taskpanel/TaskPanel_Tab_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/tearoff_pressed.tga mode change 100644 => 100755 indra/newview/skins/default/textures/tearoffbox.tga mode change 100644 => 100755 indra/newview/skins/default/textures/textures.xml mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/appearance.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/avatars.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/build.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/caret_bottom.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/caret_left.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/caret_right.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/chat.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/destinations.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/gestures.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/howto.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/inventory.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/land.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/map.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/marketplace.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/mini_cart.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/mini_map.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/move.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/nearbyvoice.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/outbox.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/people.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/picks.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/places.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/preferences.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/profile.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/search.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/snapshot.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/speak.png mode change 100644 => 100755 indra/newview/skins/default/textures/toolbar_icons/view.png mode change 100644 => 100755 indra/newview/skins/default/textures/transparent.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/up_arrow.png mode change 100644 => 100755 indra/newview/skins/default/textures/uv_test1.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/uv_test2.tga mode change 100644 => 100755 indra/newview/skins/default/textures/voice_meter_dot.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/voice_meter_rings.j2c mode change 100644 => 100755 indra/newview/skins/default/textures/white.tga mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Down.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Left.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Right.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Small_Left.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Small_Right.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Small_Up.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Arrow_Up.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Badge_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Badge_Border.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Checkbox_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Checkbox_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Checkbox_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Checkbox_On_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Checkbox_On_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Checkbox_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ComboButton_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ComboButton_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ComboButton_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ComboButton_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ComboButton_UpOff.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ComboButton_UpSelected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/DisclosureArrow_Opened_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/DropDown_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/DropDown_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/DropDown_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/DropDown_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/DropTarget.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Error_Tag_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Linden_Dollar_Alert.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ListItem_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ListItem_Select.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/MarketplaceBtn_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/MarketplaceBtn_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/New_Tag_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/New_Tag_Border.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ProgressBar.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ProgressTrack.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_On_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Selected_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/PushButton_Selected_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/RadioButton_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/RadioButton_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/RadioButton_On.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/RadioButton_On_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/RadioButton_On_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/RadioButton_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Down.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Down_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Down_Over_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Left.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Right.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Up.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Up_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollArrow_Up_Over_Opaque.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollThumb_Horiz.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollThumb_Vert.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollTrack_Horiz.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/ScrollTrack_Vert.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_On_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SliderThumb_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SliderThumb_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SliderThumb_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SliderTrack_Horiz.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/SliderTrack_Vert.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Stepper_Down_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Stepper_Down_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Stepper_Up_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Stepper_Up_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/TextField_Active.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/TextField_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/TextField_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/TextField_Search_Active.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/TextField_Search_Disabled.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/TextField_Search_Off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/Tooltip.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/bevel_background.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/buy_off.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/buy_over.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/buy_press.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/jump_left_in.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/jump_left_out.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/jump_right_in.png mode change 100644 => 100755 indra/newview/skins/default/textures/widgets/jump_right_out.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Dragbar.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Flyout_Left.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Flyout_Pointer.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Flyout_Right.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Close_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Close_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Close_Toast.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Dock_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Dock_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Gear_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Gear_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Gear_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Help_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Help_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Minimize_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Minimize_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Restore_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Restore_Press.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Icon_Undock_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Inspector_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Inspector_Hover.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Inspector_I.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Resize_Corner.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Toast_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Toast_CloseBtn.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Toast_Over.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Volume_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Wearables_Divider.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Window_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Window_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Window_NoTitle_Background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/Window_NoTitle_Foreground.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/hint_arrow_down.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/hint_arrow_left.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/hint_arrow_lower_left.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/hint_arrow_right.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/hint_arrow_up.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/hint_background.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/startup_logo.png mode change 100644 => 100755 indra/newview/skins/default/textures/windows/yellow_gradient.png mode change 100644 => 100755 indra/newview/skins/default/textures/world/BeaconArrow.png mode change 100644 => 100755 indra/newview/skins/default/textures/world/CameraDragDot.png mode change 100644 => 100755 indra/newview/skins/default/textures/world/NoEntryLines.png mode change 100644 => 100755 indra/newview/skins/default/textures/world/NoEntryPassLines.png mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_animation_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_bottomtray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_bottomtray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_region_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_side_tray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/da/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_notifications_channel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_sidetray_home_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_sys_well_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/de/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/accordion_drag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/accordion_parent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/alert_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/alert_check_box.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/alert_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/alert_line_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/favorites_bar_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_aaa.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_conversation_log.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_conversation_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_my_web_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_side_bar_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_checkbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_combobox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_inspectors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_layout.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_line_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_list_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_radiogroup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_slider.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_spinner.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_toolbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_test_widgets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_ui_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_voice_chat_volume.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_voice_volume.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_web_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/fonts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/inspect_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/inspector_info_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/main_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_conversation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_conversation_log_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_conversation_log_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_im_conversation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_im_session_showmodes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_participant_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_blocked_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_blocked_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_blocked_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_friends_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_groups_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_nearby_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_people_recent_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/notification_visibility.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_blocked_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_chat_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_chat_separator.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_classifieds_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_conversation_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_conversation_log_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_generic_tip.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_hint.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_hint_image.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_inbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_notifications_channel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_pick_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_progress.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_sys_well_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_toolbar_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_topinfo_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/accordion.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/badge.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/bodyparts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/chat_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/chat_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/check_box.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/chiclet_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/chiclet_script.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/color_swatch.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/combo_box.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/context_menu.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/conversation_view_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/drop_down.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/expandable_text.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/filter_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/flat_list_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/floater.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/flyout_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/folder_view_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/gesture_combo_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/group_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/hint_popup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/inbox_folder_view_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/inbox_folder_view_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/inbox_inventory_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/inspector.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/inventory_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/inventory_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/joystick_rotate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/layout_stack.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/line_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/list_view.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/loading_indicator.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/location_input.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu_item_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu_item_check.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu_item_separator.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/menu_item_tear_off.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/multi_slider.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/multi_slider_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/name_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/name_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/output_monitor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/panel_camera_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/progress_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/radio_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/radio_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/scroll_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/scroll_column_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/scroll_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/scroll_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/scrolling_panel_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/search_combo_box.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/search_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/side_tray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/sidetray_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/simple_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/slider.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/slider_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/spinner.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/split_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/tab_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/talk_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/teleport_history_menu_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/text.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/textbase.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/texture_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/time.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/toggleable_menu.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/tool_tip.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/toolbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/ui_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/view_border.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/web_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/widgets/window_shade.xml mode change 100644 => 100755 indra/newview/skins/default/xui/en/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/es/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/fonts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_notifications_channel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_sidetray_home_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_sys_well_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/fr/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/it/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_notifications_channel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_sidetray_home_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_sys_well_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ja/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_animation_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_bottomtray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_bottomtray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_region_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_side_tray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pl/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/language_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/outfit_accordion_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/pt/xui_version.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_aaa.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/ru/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_aaa.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/tr/teleport_strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_aaa.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_about.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_about_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_activeim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_animation_anim_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_animation_bvh_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_auction.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_autoreplace.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_avatar_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_avatar_textures.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_beacons.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_build_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_bulk_perms.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_bumps.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_buy_contents.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_buy_currency.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_buy_currency_html.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_buy_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_buy_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_camera.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_choose_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_color_picker.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_critical.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_delete_env_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_destinations.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_display_name.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_edit_day_cycle.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_edit_sky_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_edit_water_preset.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_environment_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_event.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_fast_timers.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_font_test.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_god_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_hardware_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_help_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_how_to.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_hud.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_im_container.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_im_session.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_image_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_import_collada.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_incoming_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_inspect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_inventory_item_properties.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_joystick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_lagmeter.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_land_holdings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_live_lsleditor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_lsl_guide.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_media_browser.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_media_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_mem_leaking.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_merchant_outbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_model_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_moveview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_mute_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_my_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_my_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_notification.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_notifications_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_object_weights.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_openobject.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_outfit_save_as.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_outgoing_call.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_pathfinding_characters.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_pathfinding_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_pathfinding_linksets.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_pay.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_pay_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_perm_prefs.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_post_process.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preferences.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preferences_proxy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preview_animation.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preview_gesture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preview_notecard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preview_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_preview_texture.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_price_for_listing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_publish_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_region_debug_console.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_region_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_report_abuse.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_script_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_script_debug_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_script_limits.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_script_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_script_queue.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_script_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_search.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_select_key.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_sell_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_settings_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_snapshot.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_sound_preview.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_spellcheck.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_spellcheck_import.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_stats.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_sys_well.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_telehub.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_test_layout_stacks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_test_text_vertical_aligment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_texture_fetch_debugger.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_tools.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_top_objects.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_tos.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_toybox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_translation_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_url_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_voice_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_web_content.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_whitelist_entry.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_window_size.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/floater_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/inspect_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/inspect_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/inspect_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/inspect_remote_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_add_wearable_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_attachment_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_attachment_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_avatar_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_avatar_other.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_avatar_self.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_cof_attachment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_cof_body_part.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_cof_clothing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_cof_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_favorites.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_gesture_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_group_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_hide_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_imchiclet_adhoc.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_imchiclet_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_imchiclet_p2p.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inspect_avatar_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inspect_object_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inspect_self_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inv_offer_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inventory_add.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_land.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_media_ctrl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_mini_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_model_import_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_navbar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_notification_well_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_object.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_object_icon.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_outfit_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_outfit_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_participant_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_friends_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_groups.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_groups_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_nearby.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_nearby_multiselect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_nearby_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_people_recent_view_sort.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_picks_plus.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_place.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_place_add_button.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_places_gear_folder.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_places_gear_landmark.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_profile_overflow.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_save_outfit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_script_chiclet.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_teleport_history_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_teleport_history_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_text_editor.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_toolbars.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_topinfobar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_agent.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_group.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_http.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_objectim.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_parcel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_slapp.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_slurl.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_url_teleport.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_viewer.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_wearing_gear.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/menu_wearing_tab.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/mime_types.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/mime_types_linux.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/mime_types_mac.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/notifications.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_active_object_row.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_adhoc_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_avatar_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_avatar_tag.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_block_list_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_body_parts_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_bodyparts_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_bottomtray_lite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_chat_header.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_chiclet_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_classified_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_clothing_list_button_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_cof_wearables.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_deletable_wearable_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_dummy_clothing_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_alpha.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_classified.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_eyes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_gloves.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_hair.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_jacket.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_pants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_physics.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_pick.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_shape.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_shirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_shoes.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_skin.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_skirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_socks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_underpants.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_edit_wearable.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_info_sidetray.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_invite.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_land_money.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_list_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_notices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_notify.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_group_roles.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_im_control_panel.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_instant_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_inventory_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_landmark_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_landmarks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_login.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_main_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_me.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_media_settings_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_media_settings_security.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_navigation_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_navmesh_rebake.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_nearby_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_nearby_chat_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_nearby_media.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_notify_textbox.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_online_status_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_outbox_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_outfit_edit.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_outfits_inventory_gear_default.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_outfits_list.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_outfits_wearing.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_people.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_pick_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_picks.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_place_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_places.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_postcard_message.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_postcard_settings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_advanced.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_alerts.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_chat.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_colors.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_move.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_setup.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_preferences_sound.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_region_covenant.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_region_debug.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_region_environment.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_region_estate.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_region_general.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_region_terrain.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_script_ed.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_script_limits_my_avatar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_script_limits_region_memory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_script_question_toast.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_scrolling_param.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_scrolling_param_base.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_side_tray_tab_caption.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_snapshot_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_snapshot_local.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_snapshot_options.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_snapshot_postcard.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_snapshot_profile.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_sound_devices.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_stand_stop_flying.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_status_bar.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_teleport_history.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_teleport_history_item.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_voice_effect.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_volume_pulldown.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/panel_world_map.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/role_actions.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/sidepanel_appearance.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/sidepanel_inventory.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/sidepanel_item_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/sidepanel_task_info.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/strings.xml mode change 100644 => 100755 indra/newview/skins/default/xui/zh/teleport_strings.xml mode change 100644 => 100755 indra/newview/tests/gpus_results.txt mode change 100644 => 100755 indra/newview/tests/gpus_seen.txt mode change 100644 => 100755 indra/newview/tests/llagentaccess_test.cpp mode change 100644 => 100755 indra/newview/tests/llcapabilitylistener_test.cpp mode change 100644 => 100755 indra/newview/tests/lldateutil_test.cpp mode change 100644 => 100755 indra/newview/tests/lldir_stub.cpp mode change 100644 => 100755 indra/newview/tests/llglslshader_stub.cpp mode change 100644 => 100755 indra/newview/tests/lllogininstance_test.cpp mode change 100644 => 100755 indra/newview/tests/llmediadataclient_test.cpp mode change 100644 => 100755 indra/newview/tests/llpipeline_stub.cpp mode change 100644 => 100755 indra/newview/tests/llremoteparcelrequest_test.cpp mode change 100644 => 100755 indra/newview/tests/llsecapi_test.cpp mode change 100644 => 100755 indra/newview/tests/llsechandler_basic_test.cpp mode change 100644 => 100755 indra/newview/tests/llsimplestat_test.cpp mode change 100644 => 100755 indra/newview/tests/llsky_stub.cpp mode change 100644 => 100755 indra/newview/tests/llslurl_test.cpp mode change 100644 => 100755 indra/newview/tests/lltextureinfo_test.cpp mode change 100644 => 100755 indra/newview/tests/lltextureinfodetails_test.cpp mode change 100644 => 100755 indra/newview/tests/lltexturestatsuploader_test.cpp mode change 100644 => 100755 indra/newview/tests/lltranslate_test.cpp mode change 100644 => 100755 indra/newview/tests/llversioninfo_test.cpp mode change 100644 => 100755 indra/newview/tests/llviewerassetstats_test.cpp mode change 100644 => 100755 indra/newview/tests/llviewerhelputil_test.cpp mode change 100644 => 100755 indra/newview/tests/llviewernetwork_test.cpp mode change 100644 => 100755 indra/newview/tests/llviewershadermgr_stub.cpp mode change 100644 => 100755 indra/newview/tests/llwlanimator_stub.cpp mode change 100644 => 100755 indra/newview/tests/llwldaycycle_stub.cpp mode change 100644 => 100755 indra/newview/tests/llwlparammanager_test.cpp mode change 100644 => 100755 indra/newview/tests/llwlparamset_stub.cpp mode change 100644 => 100755 indra/newview/tests/llworldmap_test.cpp mode change 100644 => 100755 indra/newview/tests/llworldmipmap_test.cpp mode change 100644 => 100755 indra/newview/tests/llxmlrpclistener_test.cpp mode change 100644 => 100755 indra/newview/tests/test_llxmlrpc_peer.py mode change 100644 => 100755 indra/newview/tr.lproj/language.txt mode change 100644 => 100755 indra/newview/uk.lproj/language.txt mode change 100644 => 100755 indra/newview/viewer_manifest.py mode change 100644 => 100755 indra/newview/zh-Hans.lproj/language.txt mode change 100644 => 100755 indra/test/CMakeLists.txt mode change 100644 => 100755 indra/test/blowfish.1.bin mode change 100644 => 100755 indra/test/blowfish.2.bin mode change 100644 => 100755 indra/test/blowfish.digits.txt mode change 100644 => 100755 indra/test/catch_and_store_what_in.h mode change 100644 => 100755 indra/test/debug.h mode change 100644 => 100755 indra/test/io.cpp mode change 100644 => 100755 indra/test/llapp_tut.cpp mode change 100644 => 100755 indra/test/llassetuploadqueue_tut.cpp mode change 100644 => 100755 indra/test/llblowfish_tut.cpp mode change 100644 => 100755 indra/test/llbuffer_tut.cpp mode change 100644 => 100755 indra/test/lldatapacker_tut.cpp mode change 100644 => 100755 indra/test/lldoubledispatch_tut.cpp mode change 100644 => 100755 indra/test/llevents_tut.cpp mode change 100644 => 100755 indra/test/llhttpdate_tut.cpp mode change 100644 => 100755 indra/test/llhttpnode_tut.cpp mode change 100644 => 100755 indra/test/lliohttpserver_tut.cpp mode change 100644 => 100755 indra/test/llmessageconfig_tut.cpp mode change 100644 => 100755 indra/test/llmessagetemplateparser_tut.cpp mode change 100644 => 100755 indra/test/llpermissions_tut.cpp mode change 100644 => 100755 indra/test/llpipeutil.cpp mode change 100644 => 100755 indra/test/llpipeutil.h mode change 100644 => 100755 indra/test/llsaleinfo_tut.cpp mode change 100644 => 100755 indra/test/llscriptresource_tut.cpp mode change 100644 => 100755 indra/test/llsd_new_tut.cpp mode change 100644 => 100755 indra/test/llsdmessagebuilder_tut.cpp mode change 100644 => 100755 indra/test/llsdmessagereader_tut.cpp mode change 100644 => 100755 indra/test/llsdtraits.h mode change 100644 => 100755 indra/test/llsdutil_tut.cpp mode change 100644 => 100755 indra/test/llservicebuilder_tut.cpp mode change 100644 => 100755 indra/test/llstreamtools_tut.cpp mode change 100644 => 100755 indra/test/lltemplatemessagebuilder_tut.cpp mode change 100644 => 100755 indra/test/lltimestampcache_tut.cpp mode change 100644 => 100755 indra/test/lltranscode_tut.cpp mode change 100644 => 100755 indra/test/lltut.cpp mode change 100644 => 100755 indra/test/lltut.h mode change 100644 => 100755 indra/test/lluserrelations_tut.cpp mode change 100644 => 100755 indra/test/lluuidhashmap_tut.cpp mode change 100644 => 100755 indra/test/llxorcipher_tut.cpp mode change 100644 => 100755 indra/test/manageapr.h mode change 100644 => 100755 indra/test/message_tut.cpp mode change 100644 => 100755 indra/test/mock_http_client.cpp mode change 100644 => 100755 indra/test/mock_http_client.h mode change 100644 => 100755 indra/test/namedtempfile.h mode change 100644 => 100755 indra/test/prim_linkability_tut.cpp mode change 100644 => 100755 indra/test/test.cpp mode change 100644 => 100755 indra/test/test.h mode change 100644 => 100755 indra/test/test_llmanifest.py mode change 100644 => 100755 indra/test_apps/llplugintest/CMakeLists.txt mode change 100644 => 100755 indra/test_apps/llplugintest/bookmarks.txt mode change 100644 => 100755 indra/test_apps/llplugintest/llmediaplugintest.cpp mode change 100644 => 100755 indra/test_apps/llplugintest/llmediaplugintest.h mode change 100644 => 100755 indra/tools/vstool/README.txt mode change 100644 => 100755 indra/tools/vstool/VSTool.csproj mode change 100644 => 100755 indra/tools/vstool/VSTool.sln mode change 100644 => 100755 indra/tools/vstool/main.cs mode change 100644 => 100755 indra/viewer_components/CMakeLists.txt mode change 100644 => 100755 indra/viewer_components/login/CMakeLists.txt mode change 100644 => 100755 indra/viewer_components/login/lllogin.cpp mode change 100644 => 100755 indra/viewer_components/login/lllogin.h mode change 100644 => 100755 indra/viewer_components/login/tests/lllogin_test.cpp mode change 100644 => 100755 indra/viewer_components/updater/CMakeLists.txt mode change 100644 => 100755 indra/viewer_components/updater/llupdatechecker.cpp mode change 100644 => 100755 indra/viewer_components/updater/llupdatechecker.h mode change 100644 => 100755 indra/viewer_components/updater/llupdatedownloader.cpp mode change 100644 => 100755 indra/viewer_components/updater/llupdatedownloader.h mode change 100644 => 100755 indra/viewer_components/updater/llupdateinstaller.cpp mode change 100644 => 100755 indra/viewer_components/updater/llupdateinstaller.h mode change 100644 => 100755 indra/viewer_components/updater/llupdaterservice.cpp mode change 100644 => 100755 indra/viewer_components/updater/llupdaterservice.h mode change 100644 => 100755 indra/viewer_components/updater/scripts/darwin/update_install mode change 100644 => 100755 indra/viewer_components/updater/scripts/linux/update_install mode change 100644 => 100755 indra/viewer_components/updater/tests/llupdaterservice_test.cpp mode change 100644 => 100755 indra/win_crash_logger/CMakeLists.txt mode change 100644 => 100755 indra/win_crash_logger/StdAfx.cpp mode change 100644 => 100755 indra/win_crash_logger/StdAfx.h mode change 100644 => 100755 indra/win_crash_logger/ll_icon.ico mode change 100644 => 100755 indra/win_crash_logger/llcrashloggerwindows.cpp mode change 100644 => 100755 indra/win_crash_logger/llcrashloggerwindows.h mode change 100644 => 100755 indra/win_crash_logger/resource.h mode change 100644 => 100755 indra/win_crash_logger/win_crash_logger.cpp mode change 100644 => 100755 indra/win_crash_logger/win_crash_logger.h mode change 100644 => 100755 indra/win_crash_logger/win_crash_logger.ico mode change 100644 => 100755 indra/win_crash_logger/win_crash_logger.rc mode change 100644 => 100755 indra/win_updater/CMakeLists.txt mode change 100644 => 100755 indra/win_updater/updater.cpp mode change 100644 => 100755 scripts/messages/message_template.msg mode change 100644 => 100755 scripts/messages/message_template.msg.sha1 mode change 100644 => 100755 scripts/setup-path.py mode change 100644 => 100755 scripts/template_verifier.py mode change 100644 => 100755 scripts/templates/template-cpp.cpp mode change 100644 => 100755 scripts/templates/template-h.h (limited to 'indra/newview/llpanelobjectinventory.cpp') diff --git a/.hgignore b/.hgignore old mode 100644 new mode 100755 diff --git a/.hgtags b/.hgtags old mode 100644 new mode 100755 diff --git a/BuildParams b/BuildParams old mode 100644 new mode 100755 diff --git a/autobuild.xml b/autobuild.xml old mode 100644 new mode 100755 index 37e5964679..789496dc3b --- a/autobuild.xml +++ b/autobuild.xml @@ -747,6 +747,7 @@ + google_breakpad license @@ -762,9 +763,9 @@ archive hash - 79976b2f93ec5716709b752483ffa04a + aff5566e04003de0383941981198e04e url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273021/arch/Darwin/installer/google_breakpad-0.0.0-rev1099-darwin-20130328.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/Darwin/installer/google_breakpad-0.0.0-rev1099-darwin-20130329.tar.bz2 name darwin @@ -786,9 +787,9 @@ archive hash - cfd02d75dbd55327de71db81dc8a3f41 + d812a6dfcabe6528198a3191068dac09 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273021/arch/CYGWIN/installer/google_breakpad-0.0.0-rev1099-windows-20130328.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/CYGWIN/installer/google_breakpad-0.0.0-rev1099-windows-20130329.tar.bz2 name windows diff --git a/doc/LGPL-licence.txt b/doc/LGPL-licence.txt old mode 100644 new mode 100755 diff --git a/doc/LICENSE-logos.txt b/doc/LICENSE-logos.txt old mode 100644 new mode 100755 diff --git a/doc/LICENSE-source.txt b/doc/LICENSE-source.txt old mode 100644 new mode 100755 diff --git a/doc/contributions.txt b/doc/contributions.txt old mode 100644 new mode 100755 diff --git a/doc/releasenotes-where.txt b/doc/releasenotes-where.txt old mode 100644 new mode 100755 diff --git a/doc/translations.txt b/doc/translations.txt old mode 100644 new mode 100755 diff --git a/etc/message.xml b/etc/message.xml old mode 100644 new mode 100755 diff --git a/indra/CMakeLists.txt b/indra/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/APR.cmake b/indra/cmake/APR.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Audio.cmake b/indra/cmake/Audio.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/BerkeleyDB.cmake b/indra/cmake/BerkeleyDB.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Boost.cmake b/indra/cmake/Boost.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/BuildVersion.cmake b/indra/cmake/BuildVersion.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/CARes.cmake b/indra/cmake/CARes.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/CMakeCopyIfDifferent.cmake b/indra/cmake/CMakeCopyIfDifferent.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/cmake/CSharpMacros.cmake b/indra/cmake/CSharpMacros.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/CURL.cmake b/indra/cmake/CURL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/CopyBackToSource.cmake b/indra/cmake/CopyBackToSource.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/DBusGlib.cmake b/indra/cmake/DBusGlib.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/DeploySharedLibs.cmake b/indra/cmake/DeploySharedLibs.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/DirectX.cmake b/indra/cmake/DirectX.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/DragDrop.cmake b/indra/cmake/DragDrop.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/EXPAT.cmake b/indra/cmake/EXPAT.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/ExamplePlugin.cmake b/indra/cmake/ExamplePlugin.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Externals.cmake b/indra/cmake/Externals.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FMOD.cmake b/indra/cmake/FMOD.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindAPR.cmake b/indra/cmake/FindAPR.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindAutobuild.cmake b/indra/cmake/FindAutobuild.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindBerkeleyDB.cmake b/indra/cmake/FindBerkeleyDB.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindCARes.cmake b/indra/cmake/FindCARes.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindELFIO.cmake b/indra/cmake/FindELFIO.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindFMOD.cmake b/indra/cmake/FindFMOD.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindGLH.cmake b/indra/cmake/FindGLH.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindGoogleBreakpad.cmake b/indra/cmake/FindGoogleBreakpad.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindGooglePerfTools.cmake b/indra/cmake/FindGooglePerfTools.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindHUNSPELL.cmake b/indra/cmake/FindHUNSPELL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindJsonCpp.cmake b/indra/cmake/FindJsonCpp.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindLLQtWebkit.cmake b/indra/cmake/FindLLQtWebkit.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindMT.cmake b/indra/cmake/FindMT.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindMono.cmake b/indra/cmake/FindMono.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindMySQL.cmake b/indra/cmake/FindMySQL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindNDOF.cmake b/indra/cmake/FindNDOF.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindOpenJPEG.cmake b/indra/cmake/FindOpenJPEG.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindSCP.cmake b/indra/cmake/FindSCP.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindSVN.cmake b/indra/cmake/FindSVN.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindXmlRpcEpi.cmake b/indra/cmake/FindXmlRpcEpi.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FindZLIB.cmake b/indra/cmake/FindZLIB.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/FreeType.cmake b/indra/cmake/FreeType.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GLH.cmake b/indra/cmake/GLH.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GLOD.cmake b/indra/cmake/GLOD.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GStreamer010Plugin.cmake b/indra/cmake/GStreamer010Plugin.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GetPrerequisites_2_8.cmake b/indra/cmake/GetPrerequisites_2_8.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Glui.cmake b/indra/cmake/Glui.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Glut.cmake b/indra/cmake/Glut.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GoogleBreakpad.cmake b/indra/cmake/GoogleBreakpad.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GoogleMock.cmake b/indra/cmake/GoogleMock.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/GooglePerfTools.cmake b/indra/cmake/GooglePerfTools.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Havok.cmake b/indra/cmake/Havok.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Hunspell.cmake b/indra/cmake/Hunspell.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/JPEG.cmake b/indra/cmake/JPEG.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/JsonCpp.cmake b/indra/cmake/JsonCpp.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLAudio.cmake b/indra/cmake/LLAudio.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLCharacter.cmake b/indra/cmake/LLCharacter.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLCommon.cmake b/indra/cmake/LLCommon.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLCoreHttp.cmake b/indra/cmake/LLCoreHttp.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLCrashLogger.cmake b/indra/cmake/LLCrashLogger.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLDatabase.cmake b/indra/cmake/LLDatabase.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLImage.cmake b/indra/cmake/LLImage.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLImageJ2COJ.cmake b/indra/cmake/LLImageJ2COJ.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLInventory.cmake b/indra/cmake/LLInventory.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLKDU.cmake b/indra/cmake/LLKDU.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLLogin.cmake b/indra/cmake/LLLogin.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLMath.cmake b/indra/cmake/LLMath.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLMessage.cmake b/indra/cmake/LLMessage.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLPhysicsExtensions.cmake b/indra/cmake/LLPhysicsExtensions.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLPlugin.cmake b/indra/cmake/LLPlugin.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLRender.cmake b/indra/cmake/LLRender.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLScene.cmake b/indra/cmake/LLScene.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLSharedLibs.cmake b/indra/cmake/LLSharedLibs.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLTestCommand.cmake b/indra/cmake/LLTestCommand.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLUI.cmake b/indra/cmake/LLUI.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLVFS.cmake b/indra/cmake/LLVFS.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLWindow.cmake b/indra/cmake/LLWindow.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLXML.cmake b/indra/cmake/LLXML.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LLXUIXML.cmake b/indra/cmake/LLXUIXML.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/LScript.cmake b/indra/cmake/LScript.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Linking.cmake b/indra/cmake/Linking.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/MediaPluginBase.cmake b/indra/cmake/MediaPluginBase.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/MonoDeps.cmake b/indra/cmake/MonoDeps.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/MonoEmbed.cmake b/indra/cmake/MonoEmbed.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/MySQL.cmake b/indra/cmake/MySQL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/NDOF.cmake b/indra/cmake/NDOF.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/NVAPI.cmake b/indra/cmake/NVAPI.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/OPENAL.cmake b/indra/cmake/OPENAL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/OpenGL.cmake b/indra/cmake/OpenGL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/OpenJPEG.cmake b/indra/cmake/OpenJPEG.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/OpenSSL.cmake b/indra/cmake/OpenSSL.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/PNG.cmake b/indra/cmake/PNG.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/PluginAPI.cmake b/indra/cmake/PluginAPI.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Prebuilt.cmake b/indra/cmake/Prebuilt.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/PulseAudio.cmake b/indra/cmake/PulseAudio.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Python.cmake b/indra/cmake/Python.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/QuickTimePlugin.cmake b/indra/cmake/QuickTimePlugin.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/TemplateCheck.cmake b/indra/cmake/TemplateCheck.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Tut.cmake b/indra/cmake/Tut.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/UI.cmake b/indra/cmake/UI.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/UnixInstall.cmake b/indra/cmake/UnixInstall.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/ViewerMiscLibs.cmake b/indra/cmake/ViewerMiscLibs.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/VisualLeakDetector.cmake b/indra/cmake/VisualLeakDetector.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/WebKitLibPlugin.cmake b/indra/cmake/WebKitLibPlugin.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/XmlRpcEpi.cmake b/indra/cmake/XmlRpcEpi.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/ZLIB.cmake b/indra/cmake/ZLIB.cmake old mode 100644 new mode 100755 diff --git a/indra/cmake/cmake_dummy.cpp b/indra/cmake/cmake_dummy.cpp old mode 100644 new mode 100755 diff --git a/indra/cmake/run_build_test.py b/indra/cmake/run_build_test.py old mode 100644 new mode 100755 diff --git a/indra/copy_win_scripts/CMakeLists.txt b/indra/copy_win_scripts/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/copy_win_scripts/start-client.py b/indra/copy_win_scripts/start-client.py old mode 100644 new mode 100755 diff --git a/indra/edit-me-to-trigger-new-build.txt b/indra/edit-me-to-trigger-new-build.txt old mode 100644 new mode 100755 diff --git a/indra/fix-incredibuild.py b/indra/fix-incredibuild.py old mode 100644 new mode 100755 diff --git a/indra/integration_tests/CMakeLists.txt b/indra/integration_tests/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llimage_libtest/CMakeLists.txt b/indra/integration_tests/llimage_libtest/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llimage_libtest/llimage_libtest.cpp b/indra/integration_tests/llimage_libtest/llimage_libtest.cpp old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llimage_libtest/llimage_libtest.h b/indra/integration_tests/llimage_libtest/llimage_libtest.h old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llui_libtest/CMakeLists.txt b/indra/integration_tests/llui_libtest/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llui_libtest/llui_libtest.cpp b/indra/integration_tests/llui_libtest/llui_libtest.cpp old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llui_libtest/llui_libtest.h b/indra/integration_tests/llui_libtest/llui_libtest.h old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llui_libtest/llwidgetreg.cpp b/indra/integration_tests/llui_libtest/llwidgetreg.cpp old mode 100644 new mode 100755 diff --git a/indra/integration_tests/llui_libtest/llwidgetreg.h b/indra/integration_tests/llui_libtest/llwidgetreg.h old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/__init__.py b/indra/lib/python/indra/__init__.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/base/__init__.py b/indra/lib/python/indra/base/__init__.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/base/cllsd_test.py b/indra/lib/python/indra/base/cllsd_test.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/base/config.py b/indra/lib/python/indra/base/config.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/base/llsd.py b/indra/lib/python/indra/base/llsd.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/base/lluuid.py b/indra/lib/python/indra/base/lluuid.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/base/metrics.py b/indra/lib/python/indra/base/metrics.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/__init__.py b/indra/lib/python/indra/ipc/__init__.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/compatibility.py b/indra/lib/python/indra/ipc/compatibility.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/httputil.py b/indra/lib/python/indra/ipc/httputil.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/llmessage.py b/indra/lib/python/indra/ipc/llmessage.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/llsdhttp.py b/indra/lib/python/indra/ipc/llsdhttp.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/mysql_pool.py b/indra/lib/python/indra/ipc/mysql_pool.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/russ.py b/indra/lib/python/indra/ipc/russ.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/servicebuilder.py b/indra/lib/python/indra/ipc/servicebuilder.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/siesta.py b/indra/lib/python/indra/ipc/siesta.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/siesta_test.py b/indra/lib/python/indra/ipc/siesta_test.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/tokenstream.py b/indra/lib/python/indra/ipc/tokenstream.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/webdav.py b/indra/lib/python/indra/ipc/webdav.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/ipc/xml_rpc.py b/indra/lib/python/indra/ipc/xml_rpc.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/__init__.py b/indra/lib/python/indra/util/__init__.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/fastest_elementtree.py b/indra/lib/python/indra/util/fastest_elementtree.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/helpformatter.py b/indra/lib/python/indra/util/helpformatter.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/iterators.py b/indra/lib/python/indra/util/iterators.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/llsubprocess.py b/indra/lib/python/indra/util/llsubprocess.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/llversion.py b/indra/lib/python/indra/util/llversion.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/named_query.py b/indra/lib/python/indra/util/named_query.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/shutil2.py b/indra/lib/python/indra/util/shutil2.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/term.py b/indra/lib/python/indra/util/term.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/indra/util/test_win32_manifest.py b/indra/lib/python/indra/util/test_win32_manifest.py old mode 100644 new mode 100755 diff --git a/indra/lib/python/uuid.py b/indra/lib/python/uuid.py old mode 100644 new mode 100755 diff --git a/indra/linux_crash_logger/CMakeLists.txt b/indra/linux_crash_logger/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/linux_crash_logger/linux_crash_logger.cpp b/indra/linux_crash_logger/linux_crash_logger.cpp old mode 100644 new mode 100755 diff --git a/indra/linux_crash_logger/llcrashloggerlinux.cpp b/indra/linux_crash_logger/llcrashloggerlinux.cpp old mode 100644 new mode 100755 diff --git a/indra/linux_crash_logger/llcrashloggerlinux.h b/indra/linux_crash_logger/llcrashloggerlinux.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/CMakeLists.txt b/indra/llaudio/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudiodecodemgr.cpp b/indra/llaudio/llaudiodecodemgr.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudiodecodemgr.h b/indra/llaudio/llaudiodecodemgr.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudioengine.cpp b/indra/llaudio/llaudioengine.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudioengine.h b/indra/llaudio/llaudioengine.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudioengine_fmod.cpp b/indra/llaudio/llaudioengine_fmod.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudioengine_fmod.h b/indra/llaudio/llaudioengine_fmod.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudioengine_openal.cpp b/indra/llaudio/llaudioengine_openal.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/llaudioengine_openal.h b/indra/llaudio/llaudioengine_openal.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener.cpp b/indra/llaudio/lllistener.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener.h b/indra/llaudio/lllistener.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener_ds3d.h b/indra/llaudio/lllistener_ds3d.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener_fmod.cpp b/indra/llaudio/lllistener_fmod.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener_fmod.h b/indra/llaudio/lllistener_fmod.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener_openal.cpp b/indra/llaudio/lllistener_openal.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/lllistener_openal.h b/indra/llaudio/lllistener_openal.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llstreamingaudio.h b/indra/llaudio/llstreamingaudio.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llstreamingaudio_fmod.cpp b/indra/llaudio/llstreamingaudio_fmod.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/llstreamingaudio_fmod.h b/indra/llaudio/llstreamingaudio_fmod.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llvorbisencode.cpp b/indra/llaudio/llvorbisencode.cpp old mode 100644 new mode 100755 diff --git a/indra/llaudio/llvorbisencode.h b/indra/llaudio/llvorbisencode.h old mode 100644 new mode 100755 diff --git a/indra/llaudio/llwindgen.h b/indra/llaudio/llwindgen.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/CMakeLists.txt b/indra/llcharacter/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llanimationstates.cpp b/indra/llcharacter/llanimationstates.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llanimationstates.h b/indra/llcharacter/llanimationstates.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llbvhconsts.h b/indra/llcharacter/llbvhconsts.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llbvhloader.cpp b/indra/llcharacter/llbvhloader.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llbvhloader.h b/indra/llcharacter/llbvhloader.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llcharacter.cpp b/indra/llcharacter/llcharacter.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llcharacter.h b/indra/llcharacter/llcharacter.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lleditingmotion.cpp b/indra/llcharacter/lleditingmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lleditingmotion.h b/indra/llcharacter/lleditingmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llgesture.cpp b/indra/llcharacter/llgesture.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llgesture.h b/indra/llcharacter/llgesture.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llhandmotion.cpp b/indra/llcharacter/llhandmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llhandmotion.h b/indra/llcharacter/llhandmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llheadrotmotion.cpp b/indra/llcharacter/llheadrotmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llheadrotmotion.h b/indra/llcharacter/llheadrotmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lljoint.cpp b/indra/llcharacter/lljoint.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lljoint.h b/indra/llcharacter/lljoint.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lljointsolverrp3.cpp b/indra/llcharacter/lljointsolverrp3.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lljointsolverrp3.h b/indra/llcharacter/lljointsolverrp3.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lljointstate.h b/indra/llcharacter/lljointstate.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframefallmotion.cpp b/indra/llcharacter/llkeyframefallmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframefallmotion.h b/indra/llcharacter/llkeyframefallmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframemotion.cpp b/indra/llcharacter/llkeyframemotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframemotion.h b/indra/llcharacter/llkeyframemotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframemotionparam.cpp b/indra/llcharacter/llkeyframemotionparam.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframemotionparam.h b/indra/llcharacter/llkeyframemotionparam.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframestandmotion.cpp b/indra/llcharacter/llkeyframestandmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframestandmotion.h b/indra/llcharacter/llkeyframestandmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframewalkmotion.cpp b/indra/llcharacter/llkeyframewalkmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llkeyframewalkmotion.h b/indra/llcharacter/llkeyframewalkmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llmotion.cpp b/indra/llcharacter/llmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llmotion.h b/indra/llcharacter/llmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llmotioncontroller.cpp b/indra/llcharacter/llmotioncontroller.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llmotioncontroller.h b/indra/llcharacter/llmotioncontroller.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llmultigesture.cpp b/indra/llcharacter/llmultigesture.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llmultigesture.h b/indra/llcharacter/llmultigesture.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llpose.cpp b/indra/llcharacter/llpose.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llpose.h b/indra/llcharacter/llpose.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llstatemachine.cpp b/indra/llcharacter/llstatemachine.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llstatemachine.h b/indra/llcharacter/llstatemachine.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lltargetingmotion.cpp b/indra/llcharacter/lltargetingmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/lltargetingmotion.h b/indra/llcharacter/lltargetingmotion.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llvisualparam.cpp b/indra/llcharacter/llvisualparam.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llvisualparam.h b/indra/llcharacter/llvisualparam.h old mode 100644 new mode 100755 diff --git a/indra/llcharacter/tests/lljoint_test.cpp b/indra/llcharacter/tests/lljoint_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llcommon/bitpack.cpp b/indra/llcommon/bitpack.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/bitpack.h b/indra/llcommon/bitpack.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/ctype_workaround.h b/indra/llcommon/ctype_workaround.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/doublelinkedlist.h b/indra/llcommon/doublelinkedlist.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/fix_macros.h b/indra/llcommon/fix_macros.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/imageids.cpp b/indra/llcommon/imageids.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/imageids.h b/indra/llcommon/imageids.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/indra_constants.cpp b/indra/llcommon/indra_constants.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/indra_constants.h b/indra/llcommon/indra_constants.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/is_approx_equal_fraction.h b/indra/llcommon/is_approx_equal_fraction.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/linden_common.h b/indra/llcommon/linden_common.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/linked_lists.h b/indra/llcommon/linked_lists.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/ll_template_cast.h b/indra/llcommon/ll_template_cast.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llaccountingcost.h b/indra/llcommon/llaccountingcost.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llagentconstants.h b/indra/llcommon/llagentconstants.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llallocator.cpp b/indra/llcommon/llallocator.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llallocator.h b/indra/llcommon/llallocator.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llallocator_heap_profile.cpp b/indra/llcommon/llallocator_heap_profile.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llallocator_heap_profile.h b/indra/llcommon/llallocator_heap_profile.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llapp.cpp b/indra/llcommon/llapp.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llapp.h b/indra/llcommon/llapp.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llapr.cpp b/indra/llcommon/llapr.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llapr.h b/indra/llcommon/llapr.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llassettype.cpp b/indra/llcommon/llassettype.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llassettype.h b/indra/llcommon/llassettype.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llassoclist.h b/indra/llcommon/llassoclist.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llavatarconstants.h b/indra/llcommon/llavatarconstants.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llavatarname.cpp b/indra/llcommon/llavatarname.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llavatarname.h b/indra/llcommon/llavatarname.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llbase32.cpp b/indra/llcommon/llbase32.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llbase32.h b/indra/llcommon/llbase32.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llbase64.cpp b/indra/llcommon/llbase64.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llbase64.h b/indra/llcommon/llbase64.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llboost.h b/indra/llcommon/llboost.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llchat.h b/indra/llcommon/llchat.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llclickaction.h b/indra/llcommon/llclickaction.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcommon.cpp b/indra/llcommon/llcommon.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcommon.h b/indra/llcommon/llcommon.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcommonutils.cpp b/indra/llcommon/llcommonutils.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcommonutils.h b/indra/llcommon/llcommonutils.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcoros.cpp b/indra/llcommon/llcoros.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcoros.h b/indra/llcommon/llcoros.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcrc.cpp b/indra/llcommon/llcrc.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcrc.h b/indra/llcommon/llcrc.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcriticaldamp.cpp b/indra/llcommon/llcriticaldamp.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcriticaldamp.h b/indra/llcommon/llcriticaldamp.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcursortypes.cpp b/indra/llcommon/llcursortypes.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llcursortypes.h b/indra/llcommon/llcursortypes.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldarray.h b/indra/llcommon/lldarray.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldarrayptr.h b/indra/llcommon/lldarrayptr.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldate.cpp b/indra/llcommon/lldate.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldate.h b/indra/llcommon/lldate.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldefs.h b/indra/llcommon/lldefs.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldeleteutils.h b/indra/llcommon/lldeleteutils.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldependencies.cpp b/indra/llcommon/lldependencies.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldependencies.h b/indra/llcommon/lldependencies.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldepthstack.h b/indra/llcommon/lldepthstack.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldictionary.cpp b/indra/llcommon/lldictionary.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldictionary.h b/indra/llcommon/lldictionary.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldlinked.h b/indra/llcommon/lldlinked.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldoubledispatch.h b/indra/llcommon/lldoubledispatch.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lldqueueptr.h b/indra/llcommon/lldqueueptr.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llendianswizzle.h b/indra/llcommon/llendianswizzle.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llenum.h b/indra/llcommon/llenum.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llerror.cpp b/indra/llcommon/llerror.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llerror.h b/indra/llcommon/llerror.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llerrorcontrol.h b/indra/llcommon/llerrorcontrol.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llerrorlegacy.h b/indra/llcommon/llerrorlegacy.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llerrorthread.cpp b/indra/llcommon/llerrorthread.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llerrorthread.h b/indra/llcommon/llerrorthread.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llevent.cpp b/indra/llcommon/llevent.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llevent.h b/indra/llcommon/llevent.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventapi.cpp b/indra/llcommon/lleventapi.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventapi.h b/indra/llcommon/lleventapi.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventcoro.cpp b/indra/llcommon/lleventcoro.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventcoro.h b/indra/llcommon/lleventcoro.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventdispatcher.cpp b/indra/llcommon/lleventdispatcher.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventdispatcher.h b/indra/llcommon/lleventdispatcher.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventemitter.h b/indra/llcommon/lleventemitter.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventfilter.cpp b/indra/llcommon/lleventfilter.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventfilter.h b/indra/llcommon/lleventfilter.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llevents.cpp b/indra/llcommon/llevents.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llevents.h b/indra/llcommon/llevents.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventtimer.cpp b/indra/llcommon/lleventtimer.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lleventtimer.h b/indra/llcommon/lleventtimer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llextendedstatus.h b/indra/llcommon/llextendedstatus.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfasttimer.cpp b/indra/llcommon/llfasttimer.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfile.cpp b/indra/llcommon/llfile.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfile.h b/indra/llcommon/llfile.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfindlocale.cpp b/indra/llcommon/llfindlocale.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfindlocale.h b/indra/llcommon/llfindlocale.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfixedbuffer.cpp b/indra/llcommon/llfixedbuffer.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfixedbuffer.h b/indra/llcommon/llfixedbuffer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llfoldertype.cpp b/indra/llcommon/llfoldertype.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llformat.cpp b/indra/llcommon/llformat.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llformat.h b/indra/llcommon/llformat.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llframetimer.cpp b/indra/llcommon/llframetimer.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llframetimer.h b/indra/llcommon/llframetimer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llhandle.h b/indra/llcommon/llhandle.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llhash.h b/indra/llcommon/llhash.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llheartbeat.cpp b/indra/llcommon/llheartbeat.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llheartbeat.h b/indra/llcommon/llheartbeat.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llhttpstatuscodes.h b/indra/llcommon/llhttpstatuscodes.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llindexedqueue.h b/indra/llcommon/llindexedqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llinitparam.cpp b/indra/llcommon/llinitparam.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llinitparam.h b/indra/llcommon/llinitparam.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llinstancetracker.cpp b/indra/llcommon/llinstancetracker.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llinstancetracker.h b/indra/llcommon/llinstancetracker.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llkeythrottle.h b/indra/llcommon/llkeythrottle.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llkeyusetracker.h b/indra/llcommon/llkeyusetracker.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllazy.cpp b/indra/llcommon/lllazy.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllazy.h b/indra/llcommon/lllazy.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llleap.cpp b/indra/llcommon/llleap.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llleap.h b/indra/llcommon/llleap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llleaplistener.cpp b/indra/llcommon/llleaplistener.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llleaplistener.h b/indra/llcommon/llleaplistener.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllinkedqueue.h b/indra/llcommon/lllinkedqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllistenerwrapper.h b/indra/llcommon/lllistenerwrapper.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llliveappconfig.cpp b/indra/llcommon/llliveappconfig.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llliveappconfig.h b/indra/llcommon/llliveappconfig.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllivefile.cpp b/indra/llcommon/lllivefile.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllivefile.h b/indra/llcommon/lllivefile.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllocalidhashmap.h b/indra/llcommon/lllocalidhashmap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllog.cpp b/indra/llcommon/lllog.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllog.h b/indra/llcommon/lllog.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lllslconstants.h b/indra/llcommon/lllslconstants.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmap.h b/indra/llcommon/llmap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmd5.cpp b/indra/llcommon/llmd5.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmd5.h b/indra/llcommon/llmd5.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmemory.cpp b/indra/llcommon/llmemory.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmemory.h b/indra/llcommon/llmemory.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmemorystream.cpp b/indra/llcommon/llmemorystream.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmemorystream.h b/indra/llcommon/llmemorystream.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmetricperformancetester.cpp b/indra/llcommon/llmetricperformancetester.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmetricperformancetester.h b/indra/llcommon/llmetricperformancetester.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmetrics.cpp b/indra/llcommon/llmetrics.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmetrics.h b/indra/llcommon/llmetrics.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmortician.cpp b/indra/llcommon/llmortician.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llmortician.h b/indra/llcommon/llmortician.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llnametable.h b/indra/llcommon/llnametable.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lloptioninterface.cpp b/indra/llcommon/lloptioninterface.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lloptioninterface.h b/indra/llcommon/lloptioninterface.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llpointer.h b/indra/llcommon/llpointer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llpreprocessor.h b/indra/llcommon/llpreprocessor.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llpriqueuemap.h b/indra/llcommon/llpriqueuemap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llprocess.cpp b/indra/llcommon/llprocess.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llprocess.h b/indra/llcommon/llprocess.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llprocessor.cpp b/indra/llcommon/llprocessor.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llprocessor.h b/indra/llcommon/llprocessor.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llptrskiplist.h b/indra/llcommon/llptrskiplist.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llptrskipmap.h b/indra/llcommon/llptrskipmap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llptrto.cpp b/indra/llcommon/llptrto.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llptrto.h b/indra/llcommon/llptrto.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llqueuedthread.cpp b/indra/llcommon/llqueuedthread.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llqueuedthread.h b/indra/llcommon/llqueuedthread.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llrand.cpp b/indra/llcommon/llrand.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llrand.h b/indra/llcommon/llrand.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llrefcount.cpp b/indra/llcommon/llrefcount.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llrefcount.h b/indra/llcommon/llrefcount.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llregistry.h b/indra/llcommon/llregistry.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llrun.cpp b/indra/llcommon/llrun.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llrun.h b/indra/llcommon/llrun.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsafehandle.h b/indra/llcommon/llsafehandle.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsd.cpp b/indra/llcommon/llsd.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsd.h b/indra/llcommon/llsd.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdparam.cpp b/indra/llcommon/llsdparam.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdparam.h b/indra/llcommon/llsdparam.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdserialize.cpp b/indra/llcommon/llsdserialize.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdserialize.h b/indra/llcommon/llsdserialize.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdserialize_xml.cpp b/indra/llcommon/llsdserialize_xml.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdserialize_xml.h b/indra/llcommon/llsdserialize_xml.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdutil.cpp b/indra/llcommon/llsdutil.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsdutil.h b/indra/llcommon/llsdutil.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsecondlifeurls.cpp b/indra/llcommon/llsecondlifeurls.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsecondlifeurls.h b/indra/llcommon/llsecondlifeurls.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsimplehash.h b/indra/llcommon/llsimplehash.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsingleton.cpp b/indra/llcommon/llsingleton.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsingleton.h b/indra/llcommon/llsingleton.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llskiplist.h b/indra/llcommon/llskiplist.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llskipmap.h b/indra/llcommon/llskipmap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsmoothstep.h b/indra/llcommon/llsmoothstep.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsortedvector.h b/indra/llcommon/llsortedvector.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstack.h b/indra/llcommon/llstack.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstacktrace.cpp b/indra/llcommon/llstacktrace.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstacktrace.h b/indra/llcommon/llstacktrace.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstat.cpp b/indra/llcommon/llstat.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstat.h b/indra/llcommon/llstat.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstatenums.h b/indra/llcommon/llstatenums.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstl.h b/indra/llcommon/llstl.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstreamqueue.cpp b/indra/llcommon/llstreamqueue.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstreamqueue.h b/indra/llcommon/llstreamqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstreamtools.cpp b/indra/llcommon/llstreamtools.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstreamtools.h b/indra/llcommon/llstreamtools.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstrider.h b/indra/llcommon/llstrider.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstring.cpp b/indra/llcommon/llstring.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstring.h b/indra/llcommon/llstring.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstringtable.cpp b/indra/llcommon/llstringtable.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llstringtable.h b/indra/llcommon/llstringtable.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsys.cpp b/indra/llcommon/llsys.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llsys.h b/indra/llcommon/llsys.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llthread.cpp b/indra/llcommon/llthread.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llthread.h b/indra/llcommon/llthread.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llthreadsafequeue.cpp b/indra/llcommon/llthreadsafequeue.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llthreadsafequeue.h b/indra/llcommon/llthreadsafequeue.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lltimer.cpp b/indra/llcommon/lltimer.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lltimer.h b/indra/llcommon/lltimer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lltreeiterators.h b/indra/llcommon/lltreeiterators.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lltypeinfolookup.h b/indra/llcommon/lltypeinfolookup.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lluri.cpp b/indra/llcommon/lluri.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lluri.h b/indra/llcommon/lluri.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lluuid.cpp b/indra/llcommon/lluuid.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/lluuid.h b/indra/llcommon/lluuid.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/lluuidhashmap.h b/indra/llcommon/lluuidhashmap.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llversionserver.h b/indra/llcommon/llversionserver.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llversionviewer.h b/indra/llcommon/llversionviewer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/llworkerthread.cpp b/indra/llcommon/llworkerthread.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/llworkerthread.h b/indra/llcommon/llworkerthread.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/metaclass.cpp b/indra/llcommon/metaclass.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/metaclass.h b/indra/llcommon/metaclass.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/metaclasst.h b/indra/llcommon/metaclasst.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/metaproperty.cpp b/indra/llcommon/metaproperty.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/metaproperty.h b/indra/llcommon/metaproperty.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/metapropertyt.h b/indra/llcommon/metapropertyt.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/reflective.cpp b/indra/llcommon/reflective.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/reflective.h b/indra/llcommon/reflective.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/reflectivet.h b/indra/llcommon/reflectivet.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/roles_constants.h b/indra/llcommon/roles_constants.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/stdenums.h b/indra/llcommon/stdenums.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/stdtypes.h b/indra/llcommon/stdtypes.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/string_table.h b/indra/llcommon/string_table.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/stringize.h b/indra/llcommon/stringize.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/StringVec.h b/indra/llcommon/tests/StringVec.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/bitpack_test.cpp b/indra/llcommon/tests/bitpack_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/commonmisc_test.cpp b/indra/llcommon/tests/commonmisc_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/listener.h b/indra/llcommon/tests/listener.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llallocator_heap_profile_test.cpp b/indra/llcommon/tests/llallocator_heap_profile_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llallocator_test.cpp b/indra/llcommon/tests/llallocator_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llbase64_test.cpp b/indra/llcommon/tests/llbase64_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lldate_test.cpp b/indra/llcommon/tests/lldate_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lldependencies_test.cpp b/indra/llcommon/tests/lldependencies_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llerror_test.cpp b/indra/llcommon/tests/llerror_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lleventcoro_test.cpp b/indra/llcommon/tests/lleventcoro_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lleventdispatcher_test.cpp b/indra/llcommon/tests/lleventdispatcher_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lleventfilter_test.cpp b/indra/llcommon/tests/lleventfilter_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llframetimer_test.cpp b/indra/llcommon/tests/llframetimer_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llinstancetracker_test.cpp b/indra/llcommon/tests/llinstancetracker_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lllazy_test.cpp b/indra/llcommon/tests/lllazy_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llleap_test.cpp b/indra/llcommon/tests/llleap_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llmemtype_test.cpp b/indra/llcommon/tests/llmemtype_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llprocess_test.cpp b/indra/llcommon/tests/llprocess_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llprocessor_test.cpp b/indra/llcommon/tests/llprocessor_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llrand_test.cpp b/indra/llcommon/tests/llrand_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llsdserialize_test.cpp b/indra/llcommon/tests/llsdserialize_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llsingleton_test.cpp b/indra/llcommon/tests/llsingleton_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llstreamqueue_test.cpp b/indra/llcommon/tests/llstreamqueue_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/llstring_test.cpp b/indra/llcommon/tests/llstring_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lltreeiterators_test.cpp b/indra/llcommon/tests/lltreeiterators_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/lluri_test.cpp b/indra/llcommon/tests/lluri_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/reflection_test.cpp b/indra/llcommon/tests/reflection_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/stringize_test.cpp b/indra/llcommon/tests/stringize_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/tests/wrapllerrs.h b/indra/llcommon/tests/wrapllerrs.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/timer.h b/indra/llcommon/timer.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/timing.cpp b/indra/llcommon/timing.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/timing.h b/indra/llcommon/timing.h old mode 100644 new mode 100755 diff --git a/indra/llcommon/u64.cpp b/indra/llcommon/u64.cpp old mode 100644 new mode 100755 diff --git a/indra/llcommon/u64.h b/indra/llcommon/u64.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/CMakeLists.txt b/indra/llcorehttp/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpinternal.h b/indra/llcorehttp/_httpinternal.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httplibcurl.cpp b/indra/llcorehttp/_httplibcurl.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httplibcurl.h b/indra/llcorehttp/_httplibcurl.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpopcancel.cpp b/indra/llcorehttp/_httpopcancel.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpopcancel.h b/indra/llcorehttp/_httpopcancel.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpoperation.cpp b/indra/llcorehttp/_httpoperation.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpoperation.h b/indra/llcorehttp/_httpoperation.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpoprequest.cpp b/indra/llcorehttp/_httpoprequest.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpoprequest.h b/indra/llcorehttp/_httpoprequest.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpopsetget.cpp b/indra/llcorehttp/_httpopsetget.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpopsetget.h b/indra/llcorehttp/_httpopsetget.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpopsetpriority.cpp b/indra/llcorehttp/_httpopsetpriority.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpopsetpriority.h b/indra/llcorehttp/_httpopsetpriority.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httppolicy.cpp b/indra/llcorehttp/_httppolicy.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httppolicy.h b/indra/llcorehttp/_httppolicy.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httppolicyclass.cpp b/indra/llcorehttp/_httppolicyclass.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httppolicyclass.h b/indra/llcorehttp/_httppolicyclass.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httppolicyglobal.cpp b/indra/llcorehttp/_httppolicyglobal.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httppolicyglobal.h b/indra/llcorehttp/_httppolicyglobal.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpreadyqueue.h b/indra/llcorehttp/_httpreadyqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpreplyqueue.cpp b/indra/llcorehttp/_httpreplyqueue.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpreplyqueue.h b/indra/llcorehttp/_httpreplyqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httprequestqueue.cpp b/indra/llcorehttp/_httprequestqueue.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httprequestqueue.h b/indra/llcorehttp/_httprequestqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpretryqueue.h b/indra/llcorehttp/_httpretryqueue.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpservice.cpp b/indra/llcorehttp/_httpservice.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_httpservice.h b/indra/llcorehttp/_httpservice.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_mutex.h b/indra/llcorehttp/_mutex.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_refcounted.cpp b/indra/llcorehttp/_refcounted.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_refcounted.h b/indra/llcorehttp/_refcounted.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/_thread.h b/indra/llcorehttp/_thread.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/bufferarray.cpp b/indra/llcorehttp/bufferarray.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/bufferarray.h b/indra/llcorehttp/bufferarray.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/bufferstream.cpp b/indra/llcorehttp/bufferstream.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/bufferstream.h b/indra/llcorehttp/bufferstream.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/examples/http_texture_load.cpp b/indra/llcorehttp/examples/http_texture_load.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpcommon.cpp b/indra/llcorehttp/httpcommon.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpcommon.h b/indra/llcorehttp/httpcommon.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httphandler.h b/indra/llcorehttp/httphandler.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpheaders.cpp b/indra/llcorehttp/httpheaders.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpheaders.h b/indra/llcorehttp/httpheaders.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpoptions.cpp b/indra/llcorehttp/httpoptions.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpoptions.h b/indra/llcorehttp/httpoptions.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httprequest.cpp b/indra/llcorehttp/httprequest.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httprequest.h b/indra/llcorehttp/httprequest.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpresponse.cpp b/indra/llcorehttp/httpresponse.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/httpresponse.h b/indra/llcorehttp/httpresponse.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/llcorehttp_test.cpp b/indra/llcorehttp/tests/llcorehttp_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/llcorehttp_test.h b/indra/llcorehttp/tests/llcorehttp_test.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_allocator.cpp b/indra/llcorehttp/tests/test_allocator.cpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_allocator.h b/indra/llcorehttp/tests/test_allocator.h old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_bufferarray.hpp b/indra/llcorehttp/tests/test_bufferarray.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_bufferstream.hpp b/indra/llcorehttp/tests/test_bufferstream.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_httpheaders.hpp b/indra/llcorehttp/tests/test_httpheaders.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_httpoperation.hpp b/indra/llcorehttp/tests/test_httpoperation.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_httprequest.hpp b/indra/llcorehttp/tests/test_httprequest.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_httprequestqueue.hpp b/indra/llcorehttp/tests/test_httprequestqueue.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_httpstatus.hpp b/indra/llcorehttp/tests/test_httpstatus.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_llcorehttp_peer.py b/indra/llcorehttp/tests/test_llcorehttp_peer.py old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/test_refcounted.hpp b/indra/llcorehttp/tests/test_refcounted.hpp old mode 100644 new mode 100755 diff --git a/indra/llcorehttp/tests/testrunner.py b/indra/llcorehttp/tests/testrunner.py old mode 100644 new mode 100755 diff --git a/indra/llcrashlogger/CMakeLists.txt b/indra/llcrashlogger/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llcrashlogger/llcrashlogger.cpp b/indra/llcrashlogger/llcrashlogger.cpp old mode 100644 new mode 100755 diff --git a/indra/llcrashlogger/llcrashlogger.h b/indra/llcrashlogger/llcrashlogger.h old mode 100644 new mode 100755 diff --git a/indra/llimage/CMakeLists.txt b/indra/llimage/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llimage/llimage.cpp b/indra/llimage/llimage.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimage.h b/indra/llimage/llimage.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagebmp.cpp b/indra/llimage/llimagebmp.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagebmp.h b/indra/llimage/llimagebmp.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagedimensionsinfo.cpp b/indra/llimage/llimagedimensionsinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagedimensionsinfo.h b/indra/llimage/llimagedimensionsinfo.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagedxt.cpp b/indra/llimage/llimagedxt.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagedxt.h b/indra/llimage/llimagedxt.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagej2c.cpp b/indra/llimage/llimagej2c.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagej2c.h b/indra/llimage/llimagej2c.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagejpeg.cpp b/indra/llimage/llimagejpeg.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagejpeg.h b/indra/llimage/llimagejpeg.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagepng.cpp b/indra/llimage/llimagepng.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagepng.h b/indra/llimage/llimagepng.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagetga.cpp b/indra/llimage/llimagetga.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimagetga.h b/indra/llimage/llimagetga.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llimageworker.cpp b/indra/llimage/llimageworker.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llimageworker.h b/indra/llimage/llimageworker.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llmapimagetype.h b/indra/llimage/llmapimagetype.h old mode 100644 new mode 100755 diff --git a/indra/llimage/llpngwrapper.cpp b/indra/llimage/llpngwrapper.cpp old mode 100644 new mode 100755 diff --git a/indra/llimage/llpngwrapper.h b/indra/llimage/llpngwrapper.h old mode 100644 new mode 100755 diff --git a/indra/llimage/tests/llimageworker_test.cpp b/indra/llimage/tests/llimageworker_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llimagej2coj/CMakeLists.txt b/indra/llimagej2coj/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llimagej2coj/llimagej2coj.cpp b/indra/llimagej2coj/llimagej2coj.cpp old mode 100644 new mode 100755 diff --git a/indra/llimagej2coj/llimagej2coj.h b/indra/llimagej2coj/llimagej2coj.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/CMakeLists.txt b/indra/llinventory/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llinventory/llcategory.cpp b/indra/llinventory/llcategory.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llcategory.h b/indra/llinventory/llcategory.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/lleconomy.cpp b/indra/llinventory/lleconomy.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/lleconomy.h b/indra/llinventory/lleconomy.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llinventory.cpp b/indra/llinventory/llinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llinventory.h b/indra/llinventory/llinventory.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llinventorydefines.cpp b/indra/llinventory/llinventorydefines.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llinventorydefines.h b/indra/llinventory/llinventorydefines.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llinventorytype.cpp b/indra/llinventory/llinventorytype.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llinventorytype.h b/indra/llinventory/llinventorytype.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/lllandmark.cpp b/indra/llinventory/lllandmark.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/lllandmark.h b/indra/llinventory/lllandmark.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llnotecard.cpp b/indra/llinventory/llnotecard.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llnotecard.h b/indra/llinventory/llnotecard.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llparcel.cpp b/indra/llinventory/llparcel.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llparcel.h b/indra/llinventory/llparcel.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llparcelflags.h b/indra/llinventory/llparcelflags.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llpermissions.cpp b/indra/llinventory/llpermissions.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llpermissions.h b/indra/llinventory/llpermissions.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llpermissionsflags.h b/indra/llinventory/llpermissionsflags.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/llsaleinfo.cpp b/indra/llinventory/llsaleinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/llsaleinfo.h b/indra/llinventory/llsaleinfo.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/lltransactionflags.cpp b/indra/llinventory/lltransactionflags.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/lltransactionflags.h b/indra/llinventory/lltransactionflags.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/lltransactiontypes.h b/indra/llinventory/lltransactiontypes.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/lluserrelations.cpp b/indra/llinventory/lluserrelations.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/lluserrelations.h b/indra/llinventory/lluserrelations.h old mode 100644 new mode 100755 diff --git a/indra/llinventory/tests/inventorymisc_test.cpp b/indra/llinventory/tests/inventorymisc_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llinventory/tests/llparcel_test.cpp b/indra/llinventory/tests/llparcel_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llkdu/CMakeLists.txt b/indra/llkdu/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llkdu/llimagej2ckdu.cpp b/indra/llkdu/llimagej2ckdu.cpp old mode 100644 new mode 100755 diff --git a/indra/llkdu/llimagej2ckdu.h b/indra/llkdu/llimagej2ckdu.h old mode 100644 new mode 100755 diff --git a/indra/llkdu/llkdumem.cpp b/indra/llkdu/llkdumem.cpp old mode 100644 new mode 100755 diff --git a/indra/llkdu/llkdumem.h b/indra/llkdu/llkdumem.h old mode 100644 new mode 100755 diff --git a/indra/llkdu/tests/llimagej2ckdu_test.cpp b/indra/llkdu/tests/llimagej2ckdu_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/CMakeLists.txt b/indra/llmath/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llmath/camera.h b/indra/llmath/camera.h old mode 100644 new mode 100755 diff --git a/indra/llmath/coordframe.h b/indra/llmath/coordframe.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llbbox.cpp b/indra/llmath/llbbox.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llbbox.h b/indra/llmath/llbbox.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llbboxlocal.cpp b/indra/llmath/llbboxlocal.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llbboxlocal.h b/indra/llmath/llbboxlocal.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llcalc.cpp b/indra/llmath/llcalc.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llcalc.h b/indra/llmath/llcalc.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llcalcparser.cpp b/indra/llmath/llcalcparser.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llcalcparser.h b/indra/llmath/llcalcparser.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llcamera.cpp b/indra/llmath/llcamera.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llcamera.h b/indra/llmath/llcamera.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llcoord.h b/indra/llmath/llcoord.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llcoordframe.cpp b/indra/llmath/llcoordframe.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llcoordframe.h b/indra/llmath/llcoordframe.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llinterp.h b/indra/llmath/llinterp.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llline.cpp b/indra/llmath/llline.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llline.h b/indra/llmath/llline.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llmath.h b/indra/llmath/llmath.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llmatrix3a.cpp b/indra/llmath/llmatrix3a.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llmatrix3a.h b/indra/llmath/llmatrix3a.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llmatrix3a.inl b/indra/llmath/llmatrix3a.inl old mode 100644 new mode 100755 diff --git a/indra/llmath/llmatrix4a.h b/indra/llmath/llmatrix4a.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llmodularmath.cpp b/indra/llmath/llmodularmath.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llmodularmath.h b/indra/llmath/llmodularmath.h old mode 100644 new mode 100755 diff --git a/indra/llmath/lloctree.h b/indra/llmath/lloctree.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llperlin.cpp b/indra/llmath/llperlin.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llperlin.h b/indra/llmath/llperlin.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llplane.h b/indra/llmath/llplane.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llquantize.h b/indra/llmath/llquantize.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llquaternion.cpp b/indra/llmath/llquaternion.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llquaternion.h b/indra/llmath/llquaternion.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llquaternion2.h b/indra/llmath/llquaternion2.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llquaternion2.inl b/indra/llmath/llquaternion2.inl old mode 100644 new mode 100755 diff --git a/indra/llmath/llrect.cpp b/indra/llmath/llrect.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llrect.h b/indra/llmath/llrect.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llsdutil_math.cpp b/indra/llmath/llsdutil_math.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llsdutil_math.h b/indra/llmath/llsdutil_math.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llsimdmath.h b/indra/llmath/llsimdmath.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llsimdtypes.h b/indra/llmath/llsimdtypes.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llsimdtypes.inl b/indra/llmath/llsimdtypes.inl old mode 100644 new mode 100755 diff --git a/indra/llmath/llsphere.cpp b/indra/llmath/llsphere.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llsphere.h b/indra/llmath/llsphere.h old mode 100644 new mode 100755 diff --git a/indra/llmath/lltreenode.h b/indra/llmath/lltreenode.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llvector4a.cpp b/indra/llmath/llvector4a.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llvector4a.h b/indra/llmath/llvector4a.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llvector4a.inl b/indra/llmath/llvector4a.inl old mode 100644 new mode 100755 diff --git a/indra/llmath/llvector4logical.h b/indra/llmath/llvector4logical.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llvolume.h b/indra/llmath/llvolume.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llvolumemgr.cpp b/indra/llmath/llvolumemgr.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llvolumemgr.h b/indra/llmath/llvolumemgr.h old mode 100644 new mode 100755 diff --git a/indra/llmath/llvolumeoctree.cpp b/indra/llmath/llvolumeoctree.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/llvolumeoctree.h b/indra/llmath/llvolumeoctree.h old mode 100644 new mode 100755 diff --git a/indra/llmath/m3math.cpp b/indra/llmath/m3math.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/m3math.h b/indra/llmath/m3math.h old mode 100644 new mode 100755 diff --git a/indra/llmath/m4math.cpp b/indra/llmath/m4math.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/m4math.h b/indra/llmath/m4math.h old mode 100644 new mode 100755 diff --git a/indra/llmath/raytrace.cpp b/indra/llmath/raytrace.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/raytrace.h b/indra/llmath/raytrace.h old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/alignment_test.cpp b/indra/llmath/tests/alignment_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/llbbox_test.cpp b/indra/llmath/tests/llbbox_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/llbboxlocal_test.cpp b/indra/llmath/tests/llbboxlocal_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/llmodularmath_test.cpp b/indra/llmath/tests/llmodularmath_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/llquaternion_test.cpp b/indra/llmath/tests/llquaternion_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/llrect_test.cpp b/indra/llmath/tests/llrect_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/m3math_test.cpp b/indra/llmath/tests/m3math_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/mathmisc_test.cpp b/indra/llmath/tests/mathmisc_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v2math_test.cpp b/indra/llmath/tests/v2math_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v3color_test.cpp b/indra/llmath/tests/v3color_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v3dmath_test.cpp b/indra/llmath/tests/v3dmath_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v3math_test.cpp b/indra/llmath/tests/v3math_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v4color_test.cpp b/indra/llmath/tests/v4color_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v4coloru_test.cpp b/indra/llmath/tests/v4coloru_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/v4math_test.cpp b/indra/llmath/tests/v4math_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/tests/xform_test.cpp b/indra/llmath/tests/xform_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v2math.cpp b/indra/llmath/v2math.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v2math.h b/indra/llmath/v2math.h old mode 100644 new mode 100755 diff --git a/indra/llmath/v3color.cpp b/indra/llmath/v3color.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v3color.h b/indra/llmath/v3color.h old mode 100644 new mode 100755 diff --git a/indra/llmath/v3dmath.cpp b/indra/llmath/v3dmath.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v3dmath.h b/indra/llmath/v3dmath.h old mode 100644 new mode 100755 diff --git a/indra/llmath/v3math.cpp b/indra/llmath/v3math.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v3math.h b/indra/llmath/v3math.h old mode 100644 new mode 100755 diff --git a/indra/llmath/v4color.cpp b/indra/llmath/v4color.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v4color.h b/indra/llmath/v4color.h old mode 100644 new mode 100755 diff --git a/indra/llmath/v4coloru.cpp b/indra/llmath/v4coloru.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v4coloru.h b/indra/llmath/v4coloru.h old mode 100644 new mode 100755 diff --git a/indra/llmath/v4math.cpp b/indra/llmath/v4math.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/v4math.h b/indra/llmath/v4math.h old mode 100644 new mode 100755 diff --git a/indra/llmath/xform.cpp b/indra/llmath/xform.cpp old mode 100644 new mode 100755 diff --git a/indra/llmath/xform.h b/indra/llmath/xform.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/CMakeLists.txt b/indra/llmessage/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llmessage/llares.cpp b/indra/llmessage/llares.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llares.h b/indra/llmessage/llares.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llareslistener.cpp b/indra/llmessage/llareslistener.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llareslistener.h b/indra/llmessage/llareslistener.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llassetstorage.cpp b/indra/llmessage/llassetstorage.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llassetstorage.h b/indra/llmessage/llassetstorage.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llavatarnamecache.cpp b/indra/llmessage/llavatarnamecache.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llavatarnamecache.h b/indra/llmessage/llavatarnamecache.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llblowfishcipher.cpp b/indra/llmessage/llblowfishcipher.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llblowfishcipher.h b/indra/llmessage/llblowfishcipher.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llbuffer.cpp b/indra/llmessage/llbuffer.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llbuffer.h b/indra/llmessage/llbuffer.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llbufferstream.cpp b/indra/llmessage/llbufferstream.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llbufferstream.h b/indra/llmessage/llbufferstream.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcachename.cpp b/indra/llmessage/llcachename.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcachename.h b/indra/llmessage/llcachename.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llchainio.cpp b/indra/llmessage/llchainio.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llchainio.h b/indra/llmessage/llchainio.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcipher.h b/indra/llmessage/llcipher.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcircuit.cpp b/indra/llmessage/llcircuit.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcircuit.h b/indra/llmessage/llcircuit.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llclassifiedflags.cpp b/indra/llmessage/llclassifiedflags.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llclassifiedflags.h b/indra/llmessage/llclassifiedflags.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcurl.cpp b/indra/llmessage/llcurl.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llcurl.h b/indra/llmessage/llcurl.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lldatapacker.cpp b/indra/llmessage/lldatapacker.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lldatapacker.h b/indra/llmessage/lldatapacker.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lldbstrings.h b/indra/llmessage/lldbstrings.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lldispatcher.cpp b/indra/llmessage/lldispatcher.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lldispatcher.h b/indra/llmessage/lldispatcher.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lleventflags.h b/indra/llmessage/lleventflags.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llfiltersd2xmlrpc.cpp b/indra/llmessage/llfiltersd2xmlrpc.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llfiltersd2xmlrpc.h b/indra/llmessage/llfiltersd2xmlrpc.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llfollowcamparams.h b/indra/llmessage/llfollowcamparams.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhost.cpp b/indra/llmessage/llhost.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhost.h b/indra/llmessage/llhost.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpassetstorage.cpp b/indra/llmessage/llhttpassetstorage.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpassetstorage.h b/indra/llmessage/llhttpassetstorage.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpclient.cpp b/indra/llmessage/llhttpclient.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpclient.h b/indra/llmessage/llhttpclient.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpclientadapter.cpp b/indra/llmessage/llhttpclientadapter.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpclientadapter.h b/indra/llmessage/llhttpclientadapter.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpclientinterface.h b/indra/llmessage/llhttpclientinterface.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpnode.cpp b/indra/llmessage/llhttpnode.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpnode.h b/indra/llmessage/llhttpnode.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpnodeadapter.h b/indra/llmessage/llhttpnodeadapter.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpsender.cpp b/indra/llmessage/llhttpsender.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llhttpsender.h b/indra/llmessage/llhttpsender.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llinstantmessage.cpp b/indra/llmessage/llinstantmessage.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llinstantmessage.h b/indra/llmessage/llinstantmessage.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llinvite.h b/indra/llmessage/llinvite.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliobuffer.cpp b/indra/llmessage/lliobuffer.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliobuffer.h b/indra/llmessage/lliobuffer.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliohttpserver.cpp b/indra/llmessage/lliohttpserver.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliohttpserver.h b/indra/llmessage/lliohttpserver.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliopipe.cpp b/indra/llmessage/lliopipe.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliopipe.h b/indra/llmessage/lliopipe.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliosocket.cpp b/indra/llmessage/lliosocket.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lliosocket.h b/indra/llmessage/lliosocket.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llioutil.cpp b/indra/llmessage/llioutil.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llioutil.h b/indra/llmessage/llioutil.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llloginflags.h b/indra/llmessage/llloginflags.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmail.cpp b/indra/llmessage/llmail.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmail.h b/indra/llmessage/llmail.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagebuilder.cpp b/indra/llmessage/llmessagebuilder.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagebuilder.h b/indra/llmessage/llmessagebuilder.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessageconfig.cpp b/indra/llmessage/llmessageconfig.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessageconfig.h b/indra/llmessage/llmessageconfig.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagereader.cpp b/indra/llmessage/llmessagereader.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagereader.h b/indra/llmessage/llmessagereader.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagesenderinterface.h b/indra/llmessage/llmessagesenderinterface.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagetemplate.cpp b/indra/llmessage/llmessagetemplate.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagetemplate.h b/indra/llmessage/llmessagetemplate.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagetemplateparser.cpp b/indra/llmessage/llmessagetemplateparser.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagetemplateparser.h b/indra/llmessage/llmessagetemplateparser.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagethrottle.cpp b/indra/llmessage/llmessagethrottle.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmessagethrottle.h b/indra/llmessage/llmessagethrottle.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmime.cpp b/indra/llmessage/llmime.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmime.h b/indra/llmessage/llmime.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llmsgvariabletype.h b/indra/llmessage/llmsgvariabletype.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llnamevalue.cpp b/indra/llmessage/llnamevalue.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llnamevalue.h b/indra/llmessage/llnamevalue.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llnullcipher.cpp b/indra/llmessage/llnullcipher.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llnullcipher.h b/indra/llmessage/llnullcipher.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpacketack.cpp b/indra/llmessage/llpacketack.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpacketack.h b/indra/llmessage/llpacketack.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpacketbuffer.cpp b/indra/llmessage/llpacketbuffer.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpacketbuffer.h b/indra/llmessage/llpacketbuffer.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpacketring.cpp b/indra/llmessage/llpacketring.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpacketring.h b/indra/llmessage/llpacketring.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpartdata.cpp b/indra/llmessage/llpartdata.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpartdata.h b/indra/llmessage/llpartdata.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llproxy.cpp b/indra/llmessage/llproxy.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llproxy.h b/indra/llmessage/llproxy.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpumpio.cpp b/indra/llmessage/llpumpio.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llpumpio.h b/indra/llmessage/llpumpio.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llqueryflags.h b/indra/llmessage/llqueryflags.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llregionflags.h b/indra/llmessage/llregionflags.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llregionhandle.h b/indra/llmessage/llregionhandle.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llregionpresenceverifier.cpp b/indra/llmessage/llregionpresenceverifier.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llregionpresenceverifier.h b/indra/llmessage/llregionpresenceverifier.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdappservices.cpp b/indra/llmessage/llsdappservices.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdappservices.h b/indra/llmessage/llsdappservices.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdhttpserver.cpp b/indra/llmessage/llsdhttpserver.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdhttpserver.h b/indra/llmessage/llsdhttpserver.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdmessage.cpp b/indra/llmessage/llsdmessage.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdmessage.h b/indra/llmessage/llsdmessage.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdmessagebuilder.cpp b/indra/llmessage/llsdmessagebuilder.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdmessagebuilder.h b/indra/llmessage/llsdmessagebuilder.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdmessagereader.cpp b/indra/llmessage/llsdmessagereader.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdmessagereader.h b/indra/llmessage/llsdmessagereader.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdrpcclient.cpp b/indra/llmessage/llsdrpcclient.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdrpcclient.h b/indra/llmessage/llsdrpcclient.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdrpcserver.cpp b/indra/llmessage/llsdrpcserver.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llsdrpcserver.h b/indra/llmessage/llsdrpcserver.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llservice.cpp b/indra/llmessage/llservice.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llservice.h b/indra/llmessage/llservice.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llservicebuilder.cpp b/indra/llmessage/llservicebuilder.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llservicebuilder.h b/indra/llmessage/llservicebuilder.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llstoredmessage.cpp b/indra/llmessage/llstoredmessage.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llstoredmessage.h b/indra/llmessage/llstoredmessage.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltaskname.h b/indra/llmessage/lltaskname.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llteleportflags.h b/indra/llmessage/llteleportflags.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltemplatemessagebuilder.cpp b/indra/llmessage/lltemplatemessagebuilder.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltemplatemessagebuilder.h b/indra/llmessage/lltemplatemessagebuilder.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltemplatemessagedispatcher.cpp b/indra/llmessage/lltemplatemessagedispatcher.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltemplatemessagedispatcher.h b/indra/llmessage/lltemplatemessagedispatcher.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltemplatemessagereader.cpp b/indra/llmessage/lltemplatemessagereader.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltemplatemessagereader.h b/indra/llmessage/lltemplatemessagereader.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llthrottle.cpp b/indra/llmessage/llthrottle.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llthrottle.h b/indra/llmessage/llthrottle.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfermanager.cpp b/indra/llmessage/lltransfermanager.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfermanager.h b/indra/llmessage/lltransfermanager.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfersourceasset.cpp b/indra/llmessage/lltransfersourceasset.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfersourceasset.h b/indra/llmessage/lltransfersourceasset.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfersourcefile.cpp b/indra/llmessage/lltransfersourcefile.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfersourcefile.h b/indra/llmessage/lltransfersourcefile.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfertargetfile.cpp b/indra/llmessage/lltransfertargetfile.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfertargetfile.h b/indra/llmessage/lltransfertargetfile.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfertargetvfile.cpp b/indra/llmessage/lltransfertargetvfile.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltransfertargetvfile.h b/indra/llmessage/lltransfertargetvfile.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltrustedmessageservice.cpp b/indra/llmessage/lltrustedmessageservice.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lltrustedmessageservice.h b/indra/llmessage/lltrustedmessageservice.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llurlrequest.cpp b/indra/llmessage/llurlrequest.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llurlrequest.h b/indra/llmessage/llurlrequest.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/lluseroperation.cpp b/indra/llmessage/lluseroperation.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/lluseroperation.h b/indra/llmessage/lluseroperation.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llvehicleparams.h b/indra/llmessage/llvehicleparams.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer.cpp b/indra/llmessage/llxfer.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer.h b/indra/llmessage/llxfer.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer_file.cpp b/indra/llmessage/llxfer_file.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer_file.h b/indra/llmessage/llxfer_file.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer_mem.cpp b/indra/llmessage/llxfer_mem.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer_mem.h b/indra/llmessage/llxfer_mem.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer_vfile.cpp b/indra/llmessage/llxfer_vfile.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfer_vfile.h b/indra/llmessage/llxfer_vfile.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfermanager.cpp b/indra/llmessage/llxfermanager.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxfermanager.h b/indra/llmessage/llxfermanager.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxorcipher.cpp b/indra/llmessage/llxorcipher.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/llxorcipher.h b/indra/llmessage/llxorcipher.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/machine.cpp b/indra/llmessage/machine.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/machine.h b/indra/llmessage/machine.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/mean_collision_data.h b/indra/llmessage/mean_collision_data.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/message.cpp b/indra/llmessage/message.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/message.h b/indra/llmessage/message.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/message_prehash.cpp b/indra/llmessage/message_prehash.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/message_prehash.h b/indra/llmessage/message_prehash.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/message_string_table.cpp b/indra/llmessage/message_string_table.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/net.cpp b/indra/llmessage/net.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/net.h b/indra/llmessage/net.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/partsyspacket.cpp b/indra/llmessage/partsyspacket.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/partsyspacket.h b/indra/llmessage/partsyspacket.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/patch_code.cpp b/indra/llmessage/patch_code.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/patch_code.h b/indra/llmessage/patch_code.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/patch_dct.cpp b/indra/llmessage/patch_dct.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/patch_dct.h b/indra/llmessage/patch_dct.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/patch_idct.cpp b/indra/llmessage/patch_idct.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/sound_ids.cpp b/indra/llmessage/sound_ids.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/sound_ids.h b/indra/llmessage/sound_ids.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/commtest.h b/indra/llmessage/tests/commtest.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llareslistener_test.cpp b/indra/llmessage/tests/llareslistener_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llavatarnamecache_test.cpp b/indra/llmessage/tests/llavatarnamecache_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llcurl_stub.cpp b/indra/llmessage/tests/llcurl_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llhost_test.cpp b/indra/llmessage/tests/llhost_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llhttpclient_test.cpp b/indra/llmessage/tests/llhttpclient_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llhttpclientadapter_test.cpp b/indra/llmessage/tests/llhttpclientadapter_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llmime_test.cpp b/indra/llmessage/tests/llmime_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llmockhttpclient.h b/indra/llmessage/tests/llmockhttpclient.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llnamevalue_test.cpp b/indra/llmessage/tests/llnamevalue_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llpartdata_test.cpp b/indra/llmessage/tests/llpartdata_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llregionpresenceverifier_test.cpp b/indra/llmessage/tests/llregionpresenceverifier_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llsdmessage_test.cpp b/indra/llmessage/tests/llsdmessage_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp b/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/lltesthttpclientadapter.cpp b/indra/llmessage/tests/lltesthttpclientadapter.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/lltesthttpclientadapter.h b/indra/llmessage/tests/lltesthttpclientadapter.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/lltestmessagesender.cpp b/indra/llmessage/tests/lltestmessagesender.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/lltestmessagesender.h b/indra/llmessage/tests/lltestmessagesender.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/lltrustedmessageservice_test.cpp b/indra/llmessage/tests/lltrustedmessageservice_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/llxfer_file_test.cpp b/indra/llmessage/tests/llxfer_file_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/networkio.h b/indra/llmessage/tests/networkio.h old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/test_llsdmessage_peer.py b/indra/llmessage/tests/test_llsdmessage_peer.py old mode 100644 new mode 100755 diff --git a/indra/llmessage/tests/testrunner.py b/indra/llmessage/tests/testrunner.py old mode 100644 new mode 100755 diff --git a/indra/llplugin/CMakeLists.txt b/indra/llplugin/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginclassmedia.h b/indra/llplugin/llpluginclassmedia.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginclassmediaowner.h b/indra/llplugin/llpluginclassmediaowner.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llplugincookiestore.cpp b/indra/llplugin/llplugincookiestore.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llplugincookiestore.h b/indra/llplugin/llplugincookiestore.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llplugininstance.cpp b/indra/llplugin/llplugininstance.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llplugininstance.h b/indra/llplugin/llplugininstance.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginmessage.cpp b/indra/llplugin/llpluginmessage.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginmessage.h b/indra/llplugin/llpluginmessage.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginmessageclasses.h b/indra/llplugin/llpluginmessageclasses.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginmessagepipe.cpp b/indra/llplugin/llpluginmessagepipe.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginmessagepipe.h b/indra/llplugin/llpluginmessagepipe.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginprocesschild.cpp b/indra/llplugin/llpluginprocesschild.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginprocesschild.h b/indra/llplugin/llpluginprocesschild.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginprocessparent.cpp b/indra/llplugin/llpluginprocessparent.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginprocessparent.h b/indra/llplugin/llpluginprocessparent.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginsharedmemory.cpp b/indra/llplugin/llpluginsharedmemory.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/llpluginsharedmemory.h b/indra/llplugin/llpluginsharedmemory.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/slplugin/CMakeLists.txt b/indra/llplugin/slplugin/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llplugin/slplugin/slplugin-objc.h b/indra/llplugin/slplugin/slplugin-objc.h old mode 100644 new mode 100755 diff --git a/indra/llplugin/slplugin/slplugin-objc.mm b/indra/llplugin/slplugin/slplugin-objc.mm old mode 100644 new mode 100755 diff --git a/indra/llplugin/slplugin/slplugin.cpp b/indra/llplugin/slplugin/slplugin.cpp old mode 100644 new mode 100755 diff --git a/indra/llplugin/slplugin/slplugin_info.plist b/indra/llplugin/slplugin/slplugin_info.plist old mode 100644 new mode 100755 diff --git a/indra/llplugin/tests/llplugincookiestore_test.cpp b/indra/llplugin/tests/llplugincookiestore_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/CMakeLists.txt b/indra/llprimitive/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llprimitive/legacy_object_types.h b/indra/llprimitive/legacy_object_types.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llmaterialtable.cpp b/indra/llprimitive/llmaterialtable.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llmaterialtable.h b/indra/llprimitive/llmaterialtable.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llmediaentry.cpp b/indra/llprimitive/llmediaentry.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llmediaentry.h b/indra/llprimitive/llmediaentry.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llmodel.cpp b/indra/llprimitive/llmodel.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llmodel.h b/indra/llprimitive/llmodel.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llprimitive.cpp b/indra/llprimitive/llprimitive.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llprimitive.h b/indra/llprimitive/llprimitive.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llprimlinkinfo.h b/indra/llprimitive/llprimlinkinfo.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llprimtexturelist.cpp b/indra/llprimitive/llprimtexturelist.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llprimtexturelist.h b/indra/llprimitive/llprimtexturelist.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltextureanim.cpp b/indra/llprimitive/lltextureanim.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltextureanim.h b/indra/llprimitive/lltextureanim.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltextureentry.cpp b/indra/llprimitive/lltextureentry.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltextureentry.h b/indra/llprimitive/lltextureentry.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltree_common.h b/indra/llprimitive/lltree_common.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltreeparams.cpp b/indra/llprimitive/lltreeparams.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/lltreeparams.h b/indra/llprimitive/lltreeparams.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llvolumemessage.cpp b/indra/llprimitive/llvolumemessage.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llvolumemessage.h b/indra/llprimitive/llvolumemessage.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llvolumexml.cpp b/indra/llprimitive/llvolumexml.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/llvolumexml.h b/indra/llprimitive/llvolumexml.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/material_codes.cpp b/indra/llprimitive/material_codes.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/material_codes.h b/indra/llprimitive/material_codes.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/object_flags.h b/indra/llprimitive/object_flags.h old mode 100644 new mode 100755 diff --git a/indra/llprimitive/tests/llmediaentry_test.cpp b/indra/llprimitive/tests/llmediaentry_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/tests/llmessagesystem_stub.cpp b/indra/llprimitive/tests/llmessagesystem_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/llprimitive/tests/llprimitive_test.cpp b/indra/llprimitive/tests/llprimitive_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/CMakeLists.txt b/indra/llrender/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llrender/llcubemap.cpp b/indra/llrender/llcubemap.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llcubemap.h b/indra/llrender/llcubemap.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontbitmapcache.cpp b/indra/llrender/llfontbitmapcache.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontbitmapcache.h b/indra/llrender/llfontbitmapcache.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontfreetype.cpp b/indra/llrender/llfontfreetype.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontfreetype.h b/indra/llrender/llfontfreetype.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontgl.cpp b/indra/llrender/llfontgl.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontgl.h b/indra/llrender/llfontgl.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontregistry.cpp b/indra/llrender/llfontregistry.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llfontregistry.h b/indra/llrender/llfontregistry.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llgl.cpp b/indra/llrender/llgl.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llgl.h b/indra/llrender/llgl.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llgldbg.cpp b/indra/llrender/llgldbg.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llgldbg.h b/indra/llrender/llgldbg.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llglheaders.h b/indra/llrender/llglheaders.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llglslshader.cpp b/indra/llrender/llglslshader.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llglslshader.h b/indra/llrender/llglslshader.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llglstates.h b/indra/llrender/llglstates.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llgltypes.h b/indra/llrender/llgltypes.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llimagegl.cpp b/indra/llrender/llimagegl.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llimagegl.h b/indra/llrender/llimagegl.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llpostprocess.cpp b/indra/llrender/llpostprocess.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llpostprocess.h b/indra/llrender/llpostprocess.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llrender.cpp b/indra/llrender/llrender.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llrender.h b/indra/llrender/llrender.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llrendernavprim.cpp b/indra/llrender/llrendernavprim.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llrendernavprim.h b/indra/llrender/llrendernavprim.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llrendersphere.cpp b/indra/llrender/llrendersphere.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llrendersphere.h b/indra/llrender/llrendersphere.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llrendertarget.cpp b/indra/llrender/llrendertarget.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llrendertarget.h b/indra/llrender/llrendertarget.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llshadermgr.h b/indra/llrender/llshadermgr.h old mode 100644 new mode 100755 diff --git a/indra/llrender/lltexture.cpp b/indra/llrender/lltexture.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/lltexture.h b/indra/llrender/lltexture.h old mode 100644 new mode 100755 diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp old mode 100644 new mode 100755 diff --git a/indra/llrender/llvertexbuffer.h b/indra/llrender/llvertexbuffer.h old mode 100644 new mode 100755 diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llui/llaccordionctrl.cpp b/indra/llui/llaccordionctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llaccordionctrl.h b/indra/llui/llaccordionctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llaccordionctrltab.cpp b/indra/llui/llaccordionctrltab.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llaccordionctrltab.h b/indra/llui/llaccordionctrltab.h old mode 100644 new mode 100755 diff --git a/indra/llui/llbadge.cpp b/indra/llui/llbadge.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llbadge.h b/indra/llui/llbadge.h old mode 100644 new mode 100755 diff --git a/indra/llui/llbadgeholder.cpp b/indra/llui/llbadgeholder.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llbadgeholder.h b/indra/llui/llbadgeholder.h old mode 100644 new mode 100755 diff --git a/indra/llui/llbadgeowner.cpp b/indra/llui/llbadgeowner.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llbadgeowner.h b/indra/llui/llbadgeowner.h old mode 100644 new mode 100755 diff --git a/indra/llui/llbutton.cpp b/indra/llui/llbutton.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llbutton.h b/indra/llui/llbutton.h old mode 100644 new mode 100755 diff --git a/indra/llui/llcallbackmap.h b/indra/llui/llcallbackmap.h old mode 100644 new mode 100755 diff --git a/indra/llui/llchatentry.cpp b/indra/llui/llchatentry.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llchatentry.h b/indra/llui/llchatentry.h old mode 100644 new mode 100755 diff --git a/indra/llui/llcheckboxctrl.cpp b/indra/llui/llcheckboxctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llcheckboxctrl.h b/indra/llui/llcheckboxctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llclipboard.cpp b/indra/llui/llclipboard.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llclipboard.h b/indra/llui/llclipboard.h old mode 100644 new mode 100755 diff --git a/indra/llui/llcombobox.cpp b/indra/llui/llcombobox.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llcombobox.h b/indra/llui/llcombobox.h old mode 100644 new mode 100755 diff --git a/indra/llui/llcommandmanager.cpp b/indra/llui/llcommandmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llcommandmanager.h b/indra/llui/llcommandmanager.h old mode 100644 new mode 100755 diff --git a/indra/llui/llconsole.cpp b/indra/llui/llconsole.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llconsole.h b/indra/llui/llconsole.h old mode 100644 new mode 100755 diff --git a/indra/llui/llcontainerview.cpp b/indra/llui/llcontainerview.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llcontainerview.h b/indra/llui/llcontainerview.h old mode 100644 new mode 100755 diff --git a/indra/llui/llctrlselectioninterface.cpp b/indra/llui/llctrlselectioninterface.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llctrlselectioninterface.h b/indra/llui/llctrlselectioninterface.h old mode 100644 new mode 100755 diff --git a/indra/llui/lldockablefloater.cpp b/indra/llui/lldockablefloater.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lldockablefloater.h b/indra/llui/lldockablefloater.h old mode 100644 new mode 100755 diff --git a/indra/llui/lldockcontrol.cpp b/indra/llui/lldockcontrol.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lldockcontrol.h b/indra/llui/lldockcontrol.h old mode 100644 new mode 100755 diff --git a/indra/llui/lldraghandle.cpp b/indra/llui/lldraghandle.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lldraghandle.h b/indra/llui/lldraghandle.h old mode 100644 new mode 100755 diff --git a/indra/llui/lleditmenuhandler.cpp b/indra/llui/lleditmenuhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lleditmenuhandler.h b/indra/llui/lleditmenuhandler.h old mode 100644 new mode 100755 diff --git a/indra/llui/llf32uictrl.cpp b/indra/llui/llf32uictrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llf32uictrl.h b/indra/llui/llf32uictrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfiltereditor.cpp b/indra/llui/llfiltereditor.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfiltereditor.h b/indra/llui/llfiltereditor.h old mode 100644 new mode 100755 diff --git a/indra/llui/llflashtimer.cpp b/indra/llui/llflashtimer.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llflashtimer.h b/indra/llui/llflashtimer.h old mode 100644 new mode 100755 diff --git a/indra/llui/llflatlistview.cpp b/indra/llui/llflatlistview.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llflatlistview.h b/indra/llui/llflatlistview.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfloaterreg.cpp b/indra/llui/llfloaterreg.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfloaterreg.h b/indra/llui/llfloaterreg.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfloaterreglistener.cpp b/indra/llui/llfloaterreglistener.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfloaterreglistener.h b/indra/llui/llfloaterreglistener.h old mode 100644 new mode 100755 diff --git a/indra/llui/llflyoutbutton.cpp b/indra/llui/llflyoutbutton.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llflyoutbutton.h b/indra/llui/llflyoutbutton.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfocusmgr.cpp b/indra/llui/llfocusmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfocusmgr.h b/indra/llui/llfocusmgr.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfolderview.h b/indra/llui/llfolderview.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfolderviewmodel.cpp b/indra/llui/llfolderviewmodel.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfolderviewmodel.h b/indra/llui/llfolderviewmodel.h old mode 100644 new mode 100755 diff --git a/indra/llui/llfunctorregistry.cpp b/indra/llui/llfunctorregistry.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llfunctorregistry.h b/indra/llui/llfunctorregistry.h old mode 100644 new mode 100755 diff --git a/indra/llui/llhelp.h b/indra/llui/llhelp.h old mode 100644 new mode 100755 diff --git a/indra/llui/lliconctrl.cpp b/indra/llui/lliconctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lliconctrl.h b/indra/llui/lliconctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llkeywords.cpp b/indra/llui/llkeywords.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llkeywords.h b/indra/llui/llkeywords.h old mode 100644 new mode 100755 diff --git a/indra/llui/lllayoutstack.cpp b/indra/llui/lllayoutstack.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lllayoutstack.h b/indra/llui/lllayoutstack.h old mode 100644 new mode 100755 diff --git a/indra/llui/lllazyvalue.h b/indra/llui/lllazyvalue.h old mode 100644 new mode 100755 diff --git a/indra/llui/lllineeditor.cpp b/indra/llui/lllineeditor.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lllineeditor.h b/indra/llui/lllineeditor.h old mode 100644 new mode 100755 diff --git a/indra/llui/llloadingindicator.cpp b/indra/llui/llloadingindicator.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llloadingindicator.h b/indra/llui/llloadingindicator.h old mode 100644 new mode 100755 diff --git a/indra/llui/lllocalcliprect.cpp b/indra/llui/lllocalcliprect.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lllocalcliprect.h b/indra/llui/lllocalcliprect.h old mode 100644 new mode 100755 diff --git a/indra/llui/llmenubutton.cpp b/indra/llui/llmenubutton.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llmenubutton.h b/indra/llui/llmenubutton.h old mode 100644 new mode 100755 diff --git a/indra/llui/llmenugl.cpp b/indra/llui/llmenugl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llmenugl.h b/indra/llui/llmenugl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llmodaldialog.cpp b/indra/llui/llmodaldialog.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llmodaldialog.h b/indra/llui/llmodaldialog.h old mode 100644 new mode 100755 diff --git a/indra/llui/llmultifloater.cpp b/indra/llui/llmultifloater.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llmultifloater.h b/indra/llui/llmultifloater.h old mode 100644 new mode 100755 diff --git a/indra/llui/llmultislider.cpp b/indra/llui/llmultislider.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llmultislider.h b/indra/llui/llmultislider.h old mode 100644 new mode 100755 diff --git a/indra/llui/llmultisliderctrl.cpp b/indra/llui/llmultisliderctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llmultisliderctrl.h b/indra/llui/llmultisliderctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llnotificationptr.h b/indra/llui/llnotificationptr.h old mode 100644 new mode 100755 diff --git a/indra/llui/llnotifications.cpp b/indra/llui/llnotifications.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llnotifications.h b/indra/llui/llnotifications.h old mode 100644 new mode 100755 diff --git a/indra/llui/llnotificationsutil.cpp b/indra/llui/llnotificationsutil.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llnotificationsutil.h b/indra/llui/llnotificationsutil.h old mode 100644 new mode 100755 diff --git a/indra/llui/llnotificationtemplate.h b/indra/llui/llnotificationtemplate.h old mode 100644 new mode 100755 diff --git a/indra/llui/llnotificationvisibilityrule.h b/indra/llui/llnotificationvisibilityrule.h old mode 100644 new mode 100755 diff --git a/indra/llui/llpanel.cpp b/indra/llui/llpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llpanel.h b/indra/llui/llpanel.h old mode 100644 new mode 100755 diff --git a/indra/llui/llprogressbar.cpp b/indra/llui/llprogressbar.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llprogressbar.h b/indra/llui/llprogressbar.h old mode 100644 new mode 100755 diff --git a/indra/llui/llradiogroup.cpp b/indra/llui/llradiogroup.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llradiogroup.h b/indra/llui/llradiogroup.h old mode 100644 new mode 100755 diff --git a/indra/llui/llresizebar.cpp b/indra/llui/llresizebar.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llresizebar.h b/indra/llui/llresizebar.h old mode 100644 new mode 100755 diff --git a/indra/llui/llresizehandle.cpp b/indra/llui/llresizehandle.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llresizehandle.h b/indra/llui/llresizehandle.h old mode 100644 new mode 100755 diff --git a/indra/llui/llresmgr.cpp b/indra/llui/llresmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llresmgr.h b/indra/llui/llresmgr.h old mode 100644 new mode 100755 diff --git a/indra/llui/llrngwriter.cpp b/indra/llui/llrngwriter.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llrngwriter.h b/indra/llui/llrngwriter.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrollbar.cpp b/indra/llui/llscrollbar.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrollbar.h b/indra/llui/llscrollbar.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrollcontainer.cpp b/indra/llui/llscrollcontainer.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrollcontainer.h b/indra/llui/llscrollcontainer.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrollingpanellist.cpp b/indra/llui/llscrollingpanellist.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrollingpanellist.h b/indra/llui/llscrollingpanellist.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistcell.cpp b/indra/llui/llscrolllistcell.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistcell.h b/indra/llui/llscrolllistcell.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistcolumn.cpp b/indra/llui/llscrolllistcolumn.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistcolumn.h b/indra/llui/llscrolllistcolumn.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistctrl.cpp b/indra/llui/llscrolllistctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistctrl.h b/indra/llui/llscrolllistctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistitem.cpp b/indra/llui/llscrolllistitem.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llscrolllistitem.h b/indra/llui/llscrolllistitem.h old mode 100644 new mode 100755 diff --git a/indra/llui/llsearcheditor.cpp b/indra/llui/llsearcheditor.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llsearcheditor.h b/indra/llui/llsearcheditor.h old mode 100644 new mode 100755 diff --git a/indra/llui/llslider.cpp b/indra/llui/llslider.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llslider.h b/indra/llui/llslider.h old mode 100644 new mode 100755 diff --git a/indra/llui/llsliderctrl.cpp b/indra/llui/llsliderctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llsliderctrl.h b/indra/llui/llsliderctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llspellcheck.cpp b/indra/llui/llspellcheck.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llspellcheck.h b/indra/llui/llspellcheck.h old mode 100644 new mode 100755 diff --git a/indra/llui/llspellcheckmenuhandler.h b/indra/llui/llspellcheckmenuhandler.h old mode 100644 new mode 100755 diff --git a/indra/llui/llspinctrl.cpp b/indra/llui/llspinctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llspinctrl.h b/indra/llui/llspinctrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/llstatbar.cpp b/indra/llui/llstatbar.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llstatbar.h b/indra/llui/llstatbar.h old mode 100644 new mode 100755 diff --git a/indra/llui/llstatgraph.cpp b/indra/llui/llstatgraph.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llstatgraph.h b/indra/llui/llstatgraph.h old mode 100644 new mode 100755 diff --git a/indra/llui/llstatview.cpp b/indra/llui/llstatview.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llstatview.h b/indra/llui/llstatview.h old mode 100644 new mode 100755 diff --git a/indra/llui/llstyle.cpp b/indra/llui/llstyle.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llstyle.h b/indra/llui/llstyle.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltabcontainer.h b/indra/llui/lltabcontainer.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltextbase.h b/indra/llui/lltextbase.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltextbox.cpp b/indra/llui/lltextbox.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltextbox.h b/indra/llui/lltextbox.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltexteditor.h b/indra/llui/lltexteditor.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltextparser.cpp b/indra/llui/lltextparser.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltextparser.h b/indra/llui/lltextparser.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltextutil.cpp b/indra/llui/lltextutil.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltextutil.h b/indra/llui/lltextutil.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltextvalidate.cpp b/indra/llui/lltextvalidate.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltextvalidate.h b/indra/llui/lltextvalidate.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltimectrl.cpp b/indra/llui/lltimectrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltimectrl.h b/indra/llui/lltimectrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltoggleablemenu.cpp b/indra/llui/lltoggleablemenu.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltoggleablemenu.h b/indra/llui/lltoggleablemenu.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltoolbar.cpp b/indra/llui/lltoolbar.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltoolbar.h b/indra/llui/lltoolbar.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltooltip.cpp b/indra/llui/lltooltip.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltooltip.h b/indra/llui/lltooltip.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltrans.cpp b/indra/llui/lltrans.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltrans.h b/indra/llui/lltrans.h old mode 100644 new mode 100755 diff --git a/indra/llui/lltransutil.cpp b/indra/llui/lltransutil.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lltransutil.h b/indra/llui/lltransutil.h old mode 100644 new mode 100755 diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llui.h b/indra/llui/llui.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluicolor.cpp b/indra/llui/lluicolor.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lluicolor.h b/indra/llui/lluicolor.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluicolortable.cpp b/indra/llui/lluicolortable.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lluicolortable.h b/indra/llui/lluicolortable.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluiconstants.h b/indra/llui/lluiconstants.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluictrl.cpp b/indra/llui/lluictrl.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lluictrl.h b/indra/llui/lluictrl.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluictrlfactory.cpp b/indra/llui/lluictrlfactory.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lluictrlfactory.h b/indra/llui/lluictrlfactory.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluifwd.h b/indra/llui/lluifwd.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluiimage.cpp b/indra/llui/lluiimage.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lluiimage.h b/indra/llui/lluiimage.h old mode 100644 new mode 100755 diff --git a/indra/llui/lluistring.cpp b/indra/llui/lluistring.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/lluistring.h b/indra/llui/lluistring.h old mode 100644 new mode 100755 diff --git a/indra/llui/llundo.cpp b/indra/llui/llundo.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llundo.h b/indra/llui/llundo.h old mode 100644 new mode 100755 diff --git a/indra/llui/llurlaction.cpp b/indra/llui/llurlaction.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llurlaction.h b/indra/llui/llurlaction.h old mode 100644 new mode 100755 diff --git a/indra/llui/llurlentry.cpp b/indra/llui/llurlentry.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llurlentry.h b/indra/llui/llurlentry.h old mode 100644 new mode 100755 diff --git a/indra/llui/llurlmatch.cpp b/indra/llui/llurlmatch.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llurlmatch.h b/indra/llui/llurlmatch.h old mode 100644 new mode 100755 diff --git a/indra/llui/llurlregistry.cpp b/indra/llui/llurlregistry.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llurlregistry.h b/indra/llui/llurlregistry.h old mode 100644 new mode 100755 diff --git a/indra/llui/llview.cpp b/indra/llui/llview.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llview.h b/indra/llui/llview.h old mode 100644 new mode 100755 diff --git a/indra/llui/llviewborder.cpp b/indra/llui/llviewborder.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llviewborder.h b/indra/llui/llviewborder.h old mode 100644 new mode 100755 diff --git a/indra/llui/llviewinject.cpp b/indra/llui/llviewinject.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llviewinject.h b/indra/llui/llviewinject.h old mode 100644 new mode 100755 diff --git a/indra/llui/llviewmodel.cpp b/indra/llui/llviewmodel.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llviewmodel.h b/indra/llui/llviewmodel.h old mode 100644 new mode 100755 diff --git a/indra/llui/llviewquery.cpp b/indra/llui/llviewquery.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llviewquery.h b/indra/llui/llviewquery.h old mode 100644 new mode 100755 diff --git a/indra/llui/llwindowshade.cpp b/indra/llui/llwindowshade.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llwindowshade.h b/indra/llui/llwindowshade.h old mode 100644 new mode 100755 diff --git a/indra/llui/llxuiparser.cpp b/indra/llui/llxuiparser.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/llxuiparser.h b/indra/llui/llxuiparser.h old mode 100644 new mode 100755 diff --git a/indra/llui/tests/llurlentry_stub.cpp b/indra/llui/tests/llurlentry_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/tests/llurlentry_test.cpp b/indra/llui/tests/llurlentry_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llui/tests/llurlmatch_test.cpp b/indra/llui/tests/llurlmatch_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/CMakeLists.txt b/indra/llvfs/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir.cpp b/indra/llvfs/lldir.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir.h b/indra/llvfs/lldir.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_linux.cpp b/indra/llvfs/lldir_linux.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_linux.h b/indra/llvfs/lldir_linux.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_mac.cpp b/indra/llvfs/lldir_mac.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_mac.h b/indra/llvfs/lldir_mac.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_solaris.cpp b/indra/llvfs/lldir_solaris.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_solaris.h b/indra/llvfs/lldir_solaris.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_win32.cpp b/indra/llvfs/lldir_win32.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldir_win32.h b/indra/llvfs/lldir_win32.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldirguard.h b/indra/llvfs/lldirguard.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldiriterator.cpp b/indra/llvfs/lldiriterator.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lldiriterator.h b/indra/llvfs/lldiriterator.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/lllfsthread.cpp b/indra/llvfs/lllfsthread.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/lllfsthread.h b/indra/llvfs/lllfsthread.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/llpidlock.cpp b/indra/llvfs/llpidlock.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/llpidlock.h b/indra/llvfs/llpidlock.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfile.cpp b/indra/llvfs/llvfile.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfile.h b/indra/llvfs/llvfile.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfs.cpp b/indra/llvfs/llvfs.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfs.h b/indra/llvfs/llvfs.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfs_objc.h b/indra/llvfs/llvfs_objc.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfs_objc.mm b/indra/llvfs/llvfs_objc.mm old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfsthread.cpp b/indra/llvfs/llvfsthread.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/llvfsthread.h b/indra/llvfs/llvfsthread.h old mode 100644 new mode 100755 diff --git a/indra/llvfs/tests/lldir_test.cpp b/indra/llvfs/tests/lldir_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llvfs/tests/lldiriterator_test.cpp b/indra/llvfs/tests/lldiriterator_test.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/CMakeLists.txt b/indra/llwindow/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llwindow/GL/glh_extensions.h b/indra/llwindow/GL/glh_extensions.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/GL/glh_genext.h b/indra/llwindow/GL/glh_genext.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/lldragdropwin32.cpp b/indra/llwindow/lldragdropwin32.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/lldragdropwin32.h b/indra/llwindow/lldragdropwin32.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/lldxhardware.cpp b/indra/llwindow/lldxhardware.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/lldxhardware.h b/indra/llwindow/lldxhardware.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboard.cpp b/indra/llwindow/llkeyboard.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboard.h b/indra/llwindow/llkeyboard.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardheadless.cpp b/indra/llwindow/llkeyboardheadless.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardheadless.h b/indra/llwindow/llkeyboardheadless.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardmacosx.cpp b/indra/llwindow/llkeyboardmacosx.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardmacosx.h b/indra/llwindow/llkeyboardmacosx.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardsdl.cpp b/indra/llwindow/llkeyboardsdl.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardsdl.h b/indra/llwindow/llkeyboardsdl.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardwin32.cpp b/indra/llwindow/llkeyboardwin32.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llkeyboardwin32.h b/indra/llwindow/llkeyboardwin32.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llmousehandler.cpp b/indra/llwindow/llmousehandler.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llmousehandler.h b/indra/llwindow/llmousehandler.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llpreeditor.h b/indra/llwindow/llpreeditor.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindow.cpp b/indra/llwindow/llwindow.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindow.h b/indra/llwindow/llwindow.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowcallbacks.cpp b/indra/llwindow/llwindowcallbacks.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowcallbacks.h b/indra/llwindow/llwindowcallbacks.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowheadless.cpp b/indra/llwindow/llwindowheadless.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowheadless.h b/indra/llwindow/llwindowheadless.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowmacosx-objc.mm b/indra/llwindow/llwindowmacosx-objc.mm old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowmacosx.h b/indra/llwindow/llwindowmacosx.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowmesaheadless.cpp b/indra/llwindow/llwindowmesaheadless.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowmesaheadless.h b/indra/llwindow/llwindowmesaheadless.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowsdl.cpp b/indra/llwindow/llwindowsdl.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowsdl.h b/indra/llwindow/llwindowsdl.h old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp old mode 100644 new mode 100755 diff --git a/indra/llwindow/llwindowwin32.h b/indra/llwindow/llwindowwin32.h old mode 100644 new mode 100755 diff --git a/indra/llxml/CMakeLists.txt b/indra/llxml/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/llxml/llcontrol.cpp b/indra/llxml/llcontrol.cpp old mode 100644 new mode 100755 diff --git a/indra/llxml/llcontrol.h b/indra/llxml/llcontrol.h old mode 100644 new mode 100755 diff --git a/indra/llxml/llcontrolgroupreader.h b/indra/llxml/llcontrolgroupreader.h old mode 100644 new mode 100755 diff --git a/indra/llxml/llxmlnode.cpp b/indra/llxml/llxmlnode.cpp old mode 100644 new mode 100755 diff --git a/indra/llxml/llxmlnode.h b/indra/llxml/llxmlnode.h old mode 100644 new mode 100755 diff --git a/indra/llxml/llxmlparser.cpp b/indra/llxml/llxmlparser.cpp old mode 100644 new mode 100755 diff --git a/indra/llxml/llxmlparser.h b/indra/llxml/llxmlparser.h old mode 100644 new mode 100755 diff --git a/indra/llxml/llxmltree.cpp b/indra/llxml/llxmltree.cpp old mode 100644 new mode 100755 diff --git a/indra/llxml/llxmltree.h b/indra/llxml/llxmltree.h old mode 100644 new mode 100755 diff --git a/indra/llxml/tests/llcontrol_test.cpp b/indra/llxml/tests/llcontrol_test.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/CMakeLists.txt b/indra/lscript/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/lscript/llscriptresource.h b/indra/lscript/llscriptresource.h old mode 100644 new mode 100755 diff --git a/indra/lscript/llscriptresourceconsumer.h b/indra/lscript/llscriptresourceconsumer.h old mode 100644 new mode 100755 diff --git a/indra/lscript/llscriptresourcepool.h b/indra/lscript/llscriptresourcepool.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_alloc.h b/indra/lscript/lscript_alloc.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_byteconvert.h b/indra/lscript/lscript_byteconvert.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_byteformat.h b/indra/lscript/lscript_byteformat.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/CMakeLists.txt b/indra/lscript/lscript_compile/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/indra.l b/indra/lscript/lscript_compile/indra.l old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/indra.y b/indra/lscript/lscript_compile/indra.y old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_alloc.cpp b/indra/lscript/lscript_compile/lscript_alloc.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_bytecode.cpp b/indra/lscript/lscript_compile/lscript_bytecode.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_bytecode.h b/indra/lscript/lscript_compile/lscript_bytecode.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_error.cpp b/indra/lscript/lscript_compile/lscript_error.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_error.h b/indra/lscript/lscript_compile/lscript_error.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_heap.cpp b/indra/lscript/lscript_compile/lscript_heap.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_heap.h b/indra/lscript/lscript_compile/lscript_heap.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_resource.cpp b/indra/lscript/lscript_compile/lscript_resource.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_resource.h b/indra/lscript/lscript_compile/lscript_resource.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_scope.cpp b/indra/lscript/lscript_compile/lscript_scope.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_scope.h b/indra/lscript/lscript_compile/lscript_scope.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_tree.cpp b/indra/lscript/lscript_compile/lscript_tree.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_tree.h b/indra/lscript/lscript_compile/lscript_tree.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_typecheck.cpp b/indra/lscript/lscript_compile/lscript_typecheck.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/lscript_typecheck.h b/indra/lscript/lscript_compile/lscript_typecheck.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_compile/windows/unistd.h b/indra/lscript/lscript_compile/windows/unistd.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute.h b/indra/lscript/lscript_execute.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/CMakeLists.txt b/indra/lscript/lscript_execute/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/llscriptresource.cpp b/indra/lscript/lscript_execute/llscriptresource.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/llscriptresourceconsumer.cpp b/indra/lscript/lscript_execute/llscriptresourceconsumer.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/llscriptresourcepool.cpp b/indra/lscript/lscript_execute/llscriptresourcepool.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/lscript_execute.cpp b/indra/lscript/lscript_execute/lscript_execute.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/lscript_heapruntime.cpp b/indra/lscript/lscript_execute/lscript_heapruntime.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/lscript_heapruntime.h b/indra/lscript/lscript_execute/lscript_heapruntime.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/lscript_readlso.cpp b/indra/lscript/lscript_execute/lscript_readlso.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_execute/lscript_readlso.h b/indra/lscript/lscript_execute/lscript_readlso.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_export.h b/indra/lscript/lscript_export.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_http.h b/indra/lscript/lscript_http.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_library.h b/indra/lscript/lscript_library.h old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_library/CMakeLists.txt b/indra/lscript/lscript_library/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_library/lscript_alloc.cpp b/indra/lscript/lscript_library/lscript_alloc.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_library/lscript_export.cpp b/indra/lscript/lscript_library/lscript_export.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_library/lscript_library.cpp b/indra/lscript/lscript_library/lscript_library.cpp old mode 100644 new mode 100755 diff --git a/indra/lscript/lscript_rt_interface.h b/indra/lscript/lscript_rt_interface.h old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/CMakeLists.txt b/indra/mac_crash_logger/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/CrashReporter.nib b/indra/mac_crash_logger/CrashReporter.nib old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/CrashReporter.xib b/indra/mac_crash_logger/CrashReporter.xib old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/Info.plist b/indra/mac_crash_logger/Info.plist old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/llcrashloggermac.cpp b/indra/mac_crash_logger/llcrashloggermac.cpp old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/llcrashloggermac.h b/indra/mac_crash_logger/llcrashloggermac.h old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/llcrashloggermacdelegate.h b/indra/mac_crash_logger/llcrashloggermacdelegate.h old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/llcrashloggermacdelegate.mm b/indra/mac_crash_logger/llcrashloggermacdelegate.mm old mode 100644 new mode 100755 diff --git a/indra/mac_crash_logger/mac_crash_logger.cpp b/indra/mac_crash_logger/mac_crash_logger.cpp old mode 100644 new mode 100755 diff --git a/indra/mac_updater/AutoUpdater.nib/classes.nib b/indra/mac_updater/AutoUpdater.nib/classes.nib old mode 100644 new mode 100755 diff --git a/indra/mac_updater/AutoUpdater.nib/info.nib b/indra/mac_updater/AutoUpdater.nib/info.nib old mode 100644 new mode 100755 diff --git a/indra/mac_updater/AutoUpdater.nib/objects.xib b/indra/mac_updater/AutoUpdater.nib/objects.xib old mode 100644 new mode 100755 diff --git a/indra/mac_updater/CMakeLists.txt b/indra/mac_updater/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/mac_updater/Info.plist b/indra/mac_updater/Info.plist old mode 100644 new mode 100755 diff --git a/indra/mac_updater/mac_updater.cpp b/indra/mac_updater/mac_updater.cpp old mode 100644 new mode 100755 diff --git a/indra/mac_updater/mac_updater.h b/indra/mac_updater/mac_updater.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/CMakeLists.txt b/indra/media_plugins/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/CMakeLists.txt b/indra/media_plugins/base/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/media_plugin_base.cpp b/indra/media_plugins/base/media_plugin_base.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/media_plugin_base.exp b/indra/media_plugins/base/media_plugin_base.exp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/base/media_plugin_base.h b/indra/media_plugins/base/media_plugin_base.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/example/CMakeLists.txt b/indra/media_plugins/example/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/example/media_plugin_example.cpp b/indra/media_plugins/example/media_plugin_example.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/CMakeLists.txt b/indra/media_plugins/gstreamer010/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamer.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_raw.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc b/indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms_rawv.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp b/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h b/indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp b/indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/quicktime/CMakeLists.txt b/indra/media_plugins/quicktime/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/quicktime/media_plugin_quicktime.cpp b/indra/media_plugins/quicktime/media_plugin_quicktime.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/dummy_volume_catcher.cpp b/indra/media_plugins/webkit/dummy_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/linux_volume_catcher.cpp b/indra/media_plugins/webkit/linux_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc b/indra/media_plugins/webkit/linux_volume_catcher_pa_syms.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc b/indra/media_plugins/webkit/linux_volume_catcher_paglib_syms.inc old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/mac_volume_catcher.cpp b/indra/media_plugins/webkit/mac_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/media_plugin_webkit.cpp b/indra/media_plugins/webkit/media_plugin_webkit.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/volume_catcher.h b/indra/media_plugins/webkit/volume_catcher.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/webkit/windows_volume_catcher.cpp b/indra/media_plugins/webkit/windows_volume_catcher.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/CMakeLists.txt b/indra/media_plugins/winmmshim/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/forwarding_api.cpp b/indra/media_plugins/winmmshim/forwarding_api.cpp old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/forwarding_api.h b/indra/media_plugins/winmmshim/forwarding_api.h old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/winmm.def b/indra/media_plugins/winmmshim/winmm.def old mode 100644 new mode 100755 diff --git a/indra/media_plugins/winmmshim/winmm_shim.cpp b/indra/media_plugins/winmmshim/winmm_shim.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/newview/English.lproj/InfoPlist.strings b/indra/newview/English.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/indra/newview/English.lproj/language.txt b/indra/newview/English.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/German.lproj/language.txt b/indra/newview/German.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/Info-SecondLife.plist b/indra/newview/Info-SecondLife.plist old mode 100644 new mode 100755 diff --git a/indra/newview/Info-SecondLifeVorbis.plist b/indra/newview/Info-SecondLifeVorbis.plist old mode 100644 new mode 100755 diff --git a/indra/newview/Japanese.lproj/language.txt b/indra/newview/Japanese.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/Korean.lproj/language.txt b/indra/newview/Korean.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/SecondLife.nib/classes.nib b/indra/newview/SecondLife.nib/classes.nib old mode 100644 new mode 100755 diff --git a/indra/newview/SecondLife.nib/info.nib b/indra/newview/SecondLife.nib/info.nib old mode 100644 new mode 100755 diff --git a/indra/newview/SecondLife.nib/objects.xib b/indra/newview/SecondLife.nib/objects.xib old mode 100644 new mode 100755 diff --git a/indra/newview/VertexCache.h b/indra/newview/VertexCache.h old mode 100644 new mode 100755 diff --git a/indra/newview/ViewerInstall.cmake b/indra/newview/ViewerInstall.cmake old mode 100644 new mode 100755 diff --git a/indra/newview/VorbisFramework.h b/indra/newview/VorbisFramework.h old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/CA.pem b/indra/newview/app_settings/CA.pem old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/anim.ini b/indra/newview/app_settings/anim.ini old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/autoreplace.xml b/indra/newview/app_settings/autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/cmd_line.xml b/indra/newview/app_settings/cmd_line.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/foldertypes.xml b/indra/newview/app_settings/foldertypes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/grass.xml b/indra/newview/app_settings/grass.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/high_graphics.xml b/indra/newview/app_settings/high_graphics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/ignorable_dialogs.xml b/indra/newview/app_settings/ignorable_dialogs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/keys.xml b/indra/newview/app_settings/keys.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/keywords.ini b/indra/newview/app_settings/keywords.ini old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/lindenlab.pem b/indra/newview/app_settings/lindenlab.pem old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/llsd.xsd b/indra/newview/app_settings/llsd.xsd old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/logcontrol.xml b/indra/newview/app_settings/logcontrol.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/low_graphics.xml b/indra/newview/app_settings/low_graphics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/mid_graphics.xml b/indra/newview/app_settings/mid_graphics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/settings_crash_behavior.xml b/indra/newview/app_settings/settings_crash_behavior.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/settings_files.xml b/indra/newview/app_settings/settings_files.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/settings_minimal.xml b/indra/newview/app_settings/settings_minimal.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/settings_per_account.xml b/indra/newview/app_settings/settings_per_account.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/avatarF.glsl b/indra/newview/app_settings/shaders/class1/avatar/avatarF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/avatarSkinV.glsl b/indra/newview/app_settings/shaders/class1/avatar/avatarSkinV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/avatarV.glsl b/indra/newview/app_settings/shaders/class1/avatar/avatarV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/eyeballF.glsl b/indra/newview/app_settings/shaders/class1/avatar/eyeballF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/eyeballV.glsl b/indra/newview/app_settings/shaders/class1/avatar/eyeballV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl b/indra/newview/app_settings/shaders/class1/avatar/objectSkinV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl b/indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/avatar/pickAvatarV.glsl b/indra/newview/app_settings/shaders/class1/avatar/pickAvatarV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/blurLightV.glsl b/indra/newview/app_settings/shaders/class1/deferred/blurLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl b/indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/bumpV.glsl b/indra/newview/app_settings/shaders/class1/deferred/bumpV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl b/indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl b/indra/newview/app_settings/shaders/class1/deferred/cloudsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/cofF.glsl b/indra/newview/app_settings/shaders/class1/deferred/cofF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseNoColorV.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseNoColorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseV.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl b/indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl b/indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/emissiveV.glsl b/indra/newview/app_settings/shaders/class1/deferred/emissiveV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/fullbrightV.glsl b/indra/newview/app_settings/shaders/class1/deferred/fullbrightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/giF.glsl b/indra/newview/app_settings/shaders/class1/deferred/giF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/impostorV.glsl b/indra/newview/app_settings/shaders/class1/deferred/impostorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl b/indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/luminanceV.glsl b/indra/newview/app_settings/shaders/class1/deferred/luminanceV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/multiPointLightV.glsl b/indra/newview/app_settings/shaders/class1/deferred/multiPointLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl b/indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/normgenV.glsl b/indra/newview/app_settings/shaders/class1/deferred/normgenV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/pointLightV.glsl b/indra/newview/app_settings/shaders/class1/deferred/pointLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredV.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskV.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowCubeV.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowCubeV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowV.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/softenLightV.glsl b/indra/newview/app_settings/shaders/class1/deferred/softenLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/starsF.glsl b/indra/newview/app_settings/shaders/class1/deferred/starsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/starsV.glsl b/indra/newview/app_settings/shaders/class1/deferred/starsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightV.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl b/indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/terrainV.glsl b/indra/newview/app_settings/shaders/class1/deferred/terrainV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeShadowV.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeShadowV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeV.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterV.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl b/indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/effects/glowExtractV.glsl b/indra/newview/app_settings/shaders/class1/effects/glowExtractV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/effects/glowF.glsl b/indra/newview/app_settings/shaders/class1/effects/glowF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/effects/glowV.glsl b/indra/newview/app_settings/shaders/class1/effects/glowV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/terrainF.glsl b/indra/newview/app_settings/shaders/class1/environment/terrainF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/terrainV.glsl b/indra/newview/app_settings/shaders/class1/environment/terrainV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl b/indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl b/indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/waterF.glsl b/indra/newview/app_settings/shaders/class1/environment/waterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl b/indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/environment/waterV.glsl b/indra/newview/app_settings/shaders/class1/environment/waterV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl b/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/alphamaskV.glsl b/indra/newview/app_settings/shaders/class1/interface/alphamaskV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/clipF.glsl b/indra/newview/app_settings/shaders/class1/interface/clipF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/clipV.glsl b/indra/newview/app_settings/shaders/class1/interface/clipV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl b/indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/customalphaV.glsl b/indra/newview/app_settings/shaders/class1/interface/customalphaV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/debugF.glsl b/indra/newview/app_settings/shaders/class1/interface/debugF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/debugV.glsl b/indra/newview/app_settings/shaders/class1/interface/debugV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl b/indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl b/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAV.glsl b/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/glowcombineV.glsl b/indra/newview/app_settings/shaders/class1/interface/glowcombineV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/highlightF.glsl b/indra/newview/app_settings/shaders/class1/interface/highlightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/highlightV.glsl b/indra/newview/app_settings/shaders/class1/interface/highlightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/occlusionCubeV.glsl b/indra/newview/app_settings/shaders/class1/interface/occlusionCubeV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl b/indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/occlusionV.glsl b/indra/newview/app_settings/shaders/class1/interface/occlusionV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl b/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorV.glsl b/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/pathfindingF.glsl b/indra/newview/app_settings/shaders/class1/interface/pathfindingF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/pathfindingNoNormalV.glsl b/indra/newview/app_settings/shaders/class1/interface/pathfindingNoNormalV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/pathfindingV.glsl b/indra/newview/app_settings/shaders/class1/interface/pathfindingV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl b/indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/solidcolorV.glsl b/indra/newview/app_settings/shaders/class1/interface/solidcolorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl b/indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl b/indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl b/indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/twotextureaddV.glsl b/indra/newview/app_settings/shaders/class1/interface/twotextureaddV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/uiF.glsl b/indra/newview/app_settings/shaders/class1/interface/uiF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/interface/uiV.glsl b/indra/newview/app_settings/shaders/class1/interface/uiV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFuncSpecularV.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFuncSpecularV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFuncV.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFuncV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightSpecularV.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightSpecularV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightV.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/sumLightsSpecularV.glsl b/indra/newview/app_settings/shaders/class1/lighting/sumLightsSpecularV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/lighting/sumLightsV.glsl b/indra/newview/app_settings/shaders/class1/lighting/sumLightsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/bumpF.glsl b/indra/newview/app_settings/shaders/class1/objects/bumpF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/bumpV.glsl b/indra/newview/app_settings/shaders/class1/objects/bumpV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/emissiveSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/objects/emissiveSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/emissiveV.glsl b/indra/newview/app_settings/shaders/class1/objects/emissiveV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightF.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightNoColorV.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightNoColorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyF.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightShinySkinnedV.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightShinySkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyV.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyWaterF.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightShinyWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightV.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/fullbrightWaterF.glsl b/indra/newview/app_settings/shaders/class1/objects/fullbrightWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl b/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/impostorV.glsl b/indra/newview/app_settings/shaders/class1/objects/impostorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/indexedTextureF.glsl b/indra/newview/app_settings/shaders/class1/objects/indexedTextureF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl b/indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/nonindexedTextureV.glsl b/indra/newview/app_settings/shaders/class1/objects/nonindexedTextureV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/previewF.glsl b/indra/newview/app_settings/shaders/class1/objects/previewF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/previewV.glsl b/indra/newview/app_settings/shaders/class1/objects/previewV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/shinyF.glsl b/indra/newview/app_settings/shaders/class1/objects/shinyF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/shinySimpleSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/objects/shinySimpleSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/shinyV.glsl b/indra/newview/app_settings/shaders/class1/objects/shinyV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/shinyWaterF.glsl b/indra/newview/app_settings/shaders/class1/objects/shinyWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleF.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleNoColorV.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleNoColorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleNonIndexedV.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleNonIndexedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleTexGenV.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleTexGenV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleV.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/simpleWaterF.glsl b/indra/newview/app_settings/shaders/class1/objects/simpleWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/objects/treeV.glsl b/indra/newview/app_settings/shaders/class1/objects/treeV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/transform/binormalV.glsl b/indra/newview/app_settings/shaders/class1/transform/binormalV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/transform/colorV.glsl b/indra/newview/app_settings/shaders/class1/transform/colorV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/transform/normalV.glsl b/indra/newview/app_settings/shaders/class1/transform/normalV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/transform/positionV.glsl b/indra/newview/app_settings/shaders/class1/transform/positionV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/transform/texcoordV.glsl b/indra/newview/app_settings/shaders/class1/transform/texcoordV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsF.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsHelpersV.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsHelpersV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsV.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsF.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsV.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsWaterF.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsWaterV.glsl b/indra/newview/app_settings/shaders/class1/windlight/atmosphericsVarsWaterV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/gammaF.glsl b/indra/newview/app_settings/shaders/class1/windlight/gammaF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class1/windlight/transportF.glsl b/indra/newview/app_settings/shaders/class1/windlight/transportF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/avatar/eyeballV.glsl b/indra/newview/app_settings/shaders/class2/avatar/eyeballV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaSkinnedV.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaSkinnedV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaV.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/avatarAlphaV.glsl b/indra/newview/app_settings/shaders/class2/deferred/avatarAlphaV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/softenLightV.glsl b/indra/newview/app_settings/shaders/class2/deferred/softenLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightV.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/lighting/sumLightsSpecularV.glsl b/indra/newview/app_settings/shaders/class2/lighting/sumLightsSpecularV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/lighting/sumLightsV.glsl b/indra/newview/app_settings/shaders/class2/lighting/sumLightsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsF.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsHelpersV.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsHelpersV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsV.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsF.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsWaterF.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsWaterF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsWaterV.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsWaterV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl b/indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/cloudsV.glsl b/indra/newview/app_settings/shaders/class2/windlight/cloudsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/gammaF.glsl b/indra/newview/app_settings/shaders/class2/windlight/gammaF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/skyF.glsl b/indra/newview/app_settings/shaders/class2/windlight/skyF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/skyV.glsl b/indra/newview/app_settings/shaders/class2/windlight/skyV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class2/windlight/transportF.glsl b/indra/newview/app_settings/shaders/class2/windlight/transportF.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class3/avatar/avatarV.glsl b/indra/newview/app_settings/shaders/class3/avatar/avatarV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class3/lighting/sumLightsSpecularV.glsl b/indra/newview/app_settings/shaders/class3/lighting/sumLightsSpecularV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/class3/lighting/sumLightsV.glsl b/indra/newview/app_settings/shaders/class3/lighting/sumLightsV.glsl old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/shaders/shader_hierarchy.txt b/indra/newview/app_settings/shaders/shader_hierarchy.txt old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/static_data.db2 b/indra/newview/app_settings/static_data.db2 old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/static_index.db2 b/indra/newview/app_settings/static_index.db2 old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/std_bump.ini b/indra/newview/app_settings/std_bump.ini old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/toolbars.xml b/indra/newview/app_settings/toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/trees.xml b/indra/newview/app_settings/trees.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/ultra_graphics.xml b/indra/newview/app_settings/ultra_graphics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/viewerart.xml b/indra/newview/app_settings/viewerart.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/clouds2.tga b/indra/newview/app_settings/windlight/clouds2.tga old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Colder%20Tones.xml b/indra/newview/app_settings/windlight/days/Colder%20Tones.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Default.xml b/indra/newview/app_settings/windlight/days/Default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Dynamic%20Richness.xml b/indra/newview/app_settings/windlight/days/Dynamic%20Richness.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Pirate%27s%20Dream.xml b/indra/newview/app_settings/windlight/days/Pirate%27s%20Dream.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Psycho%20Strobe%21.xml b/indra/newview/app_settings/windlight/days/Psycho%20Strobe%21.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Tropicalia.xml b/indra/newview/app_settings/windlight/days/Tropicalia.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/days/Weird-O.xml b/indra/newview/app_settings/windlight/days/Weird-O.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/postprocesseffects.xml b/indra/newview/app_settings/windlight/postprocesseffects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D12AM.xml b/indra/newview/app_settings/windlight/skies/A%2D12AM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D12PM.xml b/indra/newview/app_settings/windlight/skies/A%2D12PM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D3AM.xml b/indra/newview/app_settings/windlight/skies/A%2D3AM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D3PM.xml b/indra/newview/app_settings/windlight/skies/A%2D3PM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D6AM.xml b/indra/newview/app_settings/windlight/skies/A%2D6AM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D6PM.xml b/indra/newview/app_settings/windlight/skies/A%2D6PM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D9AM.xml b/indra/newview/app_settings/windlight/skies/A%2D9AM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/A%2D9PM.xml b/indra/newview/app_settings/windlight/skies/A%2D9PM.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Barcelona.xml b/indra/newview/app_settings/windlight/skies/Barcelona.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Blizzard.xml b/indra/newview/app_settings/windlight/skies/Blizzard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Blue%20Midday.xml b/indra/newview/app_settings/windlight/skies/Blue%20Midday.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Coastal%20Afternoon.xml b/indra/newview/app_settings/windlight/skies/Coastal%20Afternoon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Coastal%20Sunset.xml b/indra/newview/app_settings/windlight/skies/Coastal%20Sunset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Default.xml b/indra/newview/app_settings/windlight/skies/Default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Desert%20Sunset.xml b/indra/newview/app_settings/windlight/skies/Desert%20Sunset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Fine%20Day.xml b/indra/newview/app_settings/windlight/skies/Fine%20Day.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Fluffy%20Big%20Clouds.xml b/indra/newview/app_settings/windlight/skies/Fluffy%20Big%20Clouds.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Foggy.xml b/indra/newview/app_settings/windlight/skies/Foggy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Funky%20Funky%20Funky.xml b/indra/newview/app_settings/windlight/skies/Funky%20Funky%20Funky.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Funky%20Funky.xml b/indra/newview/app_settings/windlight/skies/Funky%20Funky.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Gelatto.xml b/indra/newview/app_settings/windlight/skies/Gelatto.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Ghost.xml b/indra/newview/app_settings/windlight/skies/Ghost.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Incongruent%20Truths.xml b/indra/newview/app_settings/windlight/skies/Incongruent%20Truths.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Midday%201.xml b/indra/newview/app_settings/windlight/skies/Midday%201.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Midday%202.xml b/indra/newview/app_settings/windlight/skies/Midday%202.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Midday%203.xml b/indra/newview/app_settings/windlight/skies/Midday%203.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Midday%204.xml b/indra/newview/app_settings/windlight/skies/Midday%204.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Midday.xml b/indra/newview/app_settings/windlight/skies/Midday.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Midnight.xml b/indra/newview/app_settings/windlight/skies/Midnight.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Night.xml b/indra/newview/app_settings/windlight/skies/Night.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Pirate.xml b/indra/newview/app_settings/windlight/skies/Pirate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Purple.xml b/indra/newview/app_settings/windlight/skies/Purple.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Sailor%27s%20Delight.xml b/indra/newview/app_settings/windlight/skies/Sailor%27s%20Delight.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Sheer%20Surreality.xml b/indra/newview/app_settings/windlight/skies/Sheer%20Surreality.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Sunrise.xml b/indra/newview/app_settings/windlight/skies/Sunrise.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/skies/Sunset.xml b/indra/newview/app_settings/windlight/skies/Sunset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/Default.xml b/indra/newview/app_settings/windlight/water/Default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/Glassy.xml b/indra/newview/app_settings/windlight/water/Glassy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/Murky.xml b/indra/newview/app_settings/windlight/water/Murky.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/Pond.xml b/indra/newview/app_settings/windlight/water/Pond.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/SNAKE%21%21%21.xml b/indra/newview/app_settings/windlight/water/SNAKE%21%21%21.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/Second%20Plague.xml b/indra/newview/app_settings/windlight/water/Second%20Plague.xml old mode 100644 new mode 100755 diff --git a/indra/newview/app_settings/windlight/water/Valdez.xml b/indra/newview/app_settings/windlight/water/Valdez.xml old mode 100644 new mode 100755 diff --git a/indra/newview/build_win32_appConfig.py b/indra/newview/build_win32_appConfig.py old mode 100644 new mode 100755 diff --git a/indra/newview/character/attentions.xml b/indra/newview/character/attentions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/character/attentionsN.xml b/indra/newview/character/attentionsN.xml old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_eye.llm b/indra/newview/character/avatar_eye.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_eye_1.llm b/indra/newview/character/avatar_eye_1.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_eyelashes.llm b/indra/newview/character/avatar_eyelashes.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_hair.llm b/indra/newview/character/avatar_hair.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_hair_1.llm b/indra/newview/character/avatar_hair_1.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_hair_2.llm b/indra/newview/character/avatar_hair_2.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_hair_3.llm b/indra/newview/character/avatar_hair_3.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_hair_4.llm b/indra/newview/character/avatar_hair_4.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_hair_5.llm b/indra/newview/character/avatar_hair_5.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_head.llm b/indra/newview/character/avatar_head.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_head_1.llm b/indra/newview/character/avatar_head_1.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_head_2.llm b/indra/newview/character/avatar_head_2.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_head_3.llm b/indra/newview/character/avatar_head_3.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_head_4.llm b/indra/newview/character/avatar_head_4.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_lad.xml b/indra/newview/character/avatar_lad.xml old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_lower_body.llm b/indra/newview/character/avatar_lower_body.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_lower_body_1.llm b/indra/newview/character/avatar_lower_body_1.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_lower_body_2.llm b/indra/newview/character/avatar_lower_body_2.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_lower_body_3.llm b/indra/newview/character/avatar_lower_body_3.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_lower_body_4.llm b/indra/newview/character/avatar_lower_body_4.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_skeleton.xml b/indra/newview/character/avatar_skeleton.xml old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_skirt.llm b/indra/newview/character/avatar_skirt.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_skirt_1.llm b/indra/newview/character/avatar_skirt_1.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_skirt_2.llm b/indra/newview/character/avatar_skirt_2.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_skirt_3.llm b/indra/newview/character/avatar_skirt_3.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_skirt_4.llm b/indra/newview/character/avatar_skirt_4.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_upper_body.llm b/indra/newview/character/avatar_upper_body.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_upper_body_1.llm b/indra/newview/character/avatar_upper_body_1.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_upper_body_2.llm b/indra/newview/character/avatar_upper_body_2.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_upper_body_3.llm b/indra/newview/character/avatar_upper_body_3.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/avatar_upper_body_4.llm b/indra/newview/character/avatar_upper_body_4.llm old mode 100644 new mode 100755 diff --git a/indra/newview/character/blush_alpha.tga b/indra/newview/character/blush_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/body_skingrain.tga b/indra/newview/character/body_skingrain.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bodyfreckles_alpha.tga b/indra/newview/character/bodyfreckles_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bump_face_wrinkles.tga b/indra/newview/character/bump_face_wrinkles.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bump_head_base.tga b/indra/newview/character/bump_head_base.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bump_lowerbody_base.tga b/indra/newview/character/bump_lowerbody_base.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bump_pants_wrinkles.tga b/indra/newview/character/bump_pants_wrinkles.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bump_shirt_wrinkles.tga b/indra/newview/character/bump_shirt_wrinkles.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/bump_upperbody_base.tga b/indra/newview/character/bump_upperbody_base.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/checkerboard.tga b/indra/newview/character/checkerboard.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/eyebrows_alpha.tga b/indra/newview/character/eyebrows_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/eyeliner_alpha.tga b/indra/newview/character/eyeliner_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/eyeshadow_inner_alpha.tga b/indra/newview/character/eyeshadow_inner_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/eyeshadow_outer_alpha.tga b/indra/newview/character/eyeshadow_outer_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/eyewhite.tga b/indra/newview/character/eyewhite.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/facehair_chincurtains_alpha.tga b/indra/newview/character/facehair_chincurtains_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/facehair_moustache_alpha.tga b/indra/newview/character/facehair_moustache_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/facehair_sideburns_alpha.tga b/indra/newview/character/facehair_sideburns_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/facehair_soulpatch_alpha.tga b/indra/newview/character/facehair_soulpatch_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/freckles_alpha.tga b/indra/newview/character/freckles_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/genepool.xml b/indra/newview/character/genepool.xml old mode 100644 new mode 100755 diff --git a/indra/newview/character/glove_length_alpha.tga b/indra/newview/character/glove_length_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/gloves_fingers_alpha.tga b/indra/newview/character/gloves_fingers_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/head_alpha.tga b/indra/newview/character/head_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/head_color.tga b/indra/newview/character/head_color.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/head_hair.tga b/indra/newview/character/head_hair.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/head_highlights_alpha.tga b/indra/newview/character/head_highlights_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/head_shading_alpha.tga b/indra/newview/character/head_shading_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/head_skingrain.tga b/indra/newview/character/head_skingrain.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/jacket_length_lower_alpha.tga b/indra/newview/character/jacket_length_lower_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/jacket_length_upper_alpha.tga b/indra/newview/character/jacket_length_upper_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/jacket_open_lower_alpha.tga b/indra/newview/character/jacket_open_lower_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/jacket_open_upper_alpha.tga b/indra/newview/character/jacket_open_upper_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/lipgloss_alpha.tga b/indra/newview/character/lipgloss_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/lips_mask.tga b/indra/newview/character/lips_mask.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/lipstick_alpha.tga b/indra/newview/character/lipstick_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/lowerbody_color.tga b/indra/newview/character/lowerbody_color.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/lowerbody_highlights_alpha.tga b/indra/newview/character/lowerbody_highlights_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/lowerbody_shading_alpha.tga b/indra/newview/character/lowerbody_shading_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/nailpolish_alpha.tga b/indra/newview/character/nailpolish_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/pants_length_alpha.tga b/indra/newview/character/pants_length_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/pants_waist_alpha.tga b/indra/newview/character/pants_waist_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/rosyface_alpha.tga b/indra/newview/character/rosyface_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/rouge_alpha.tga b/indra/newview/character/rouge_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/shirt_bottom_alpha.tga b/indra/newview/character/shirt_bottom_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/shirt_collar_alpha.tga b/indra/newview/character/shirt_collar_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/shirt_collar_back_alpha.tga b/indra/newview/character/shirt_collar_back_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/shirt_sleeve_alpha.tga b/indra/newview/character/shirt_sleeve_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/shoe_height_alpha.tga b/indra/newview/character/shoe_height_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/skirt_length_alpha.tga b/indra/newview/character/skirt_length_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/skirt_slit_back_alpha.tga b/indra/newview/character/skirt_slit_back_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/skirt_slit_front_alpha.tga b/indra/newview/character/skirt_slit_front_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/skirt_slit_left_alpha.tga b/indra/newview/character/skirt_slit_left_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/skirt_slit_right_alpha.tga b/indra/newview/character/skirt_slit_right_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/underpants_trial_female.tga b/indra/newview/character/underpants_trial_female.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/underpants_trial_male.tga b/indra/newview/character/underpants_trial_male.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/undershirt_trial_female.tga b/indra/newview/character/undershirt_trial_female.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/upperbody_color.tga b/indra/newview/character/upperbody_color.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/upperbody_highlights_alpha.tga b/indra/newview/character/upperbody_highlights_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/upperbody_shading_alpha.tga b/indra/newview/character/upperbody_shading_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/character/upperbodyfreckles_alpha.tga b/indra/newview/character/upperbodyfreckles_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_ARROW.tif b/indra/newview/cursors_mac/UI_CURSOR_ARROW.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_ARROWDRAG.tif b/indra/newview/cursors_mac/UI_CURSOR_ARROWDRAG.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_ARROWLOCKED.tif b/indra/newview/cursors_mac/UI_CURSOR_ARROWLOCKED.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_GRABLOCKED.tif b/indra/newview/cursors_mac/UI_CURSOR_GRABLOCKED.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_NO.tif b/indra/newview/cursors_mac/UI_CURSOR_NO.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_NOLOCKED.tif b/indra/newview/cursors_mac/UI_CURSOR_NOLOCKED.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING.tif b/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END.tif b/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END_ADD.tif b/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_END_ADD.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START.tif b/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START_ADD.tif b/indra/newview/cursors_mac/UI_CURSOR_PATHFINDING_START_ADD.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_SIZENESW.tif b/indra/newview/cursors_mac/UI_CURSOR_SIZENESW.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_SIZENS.tif b/indra/newview/cursors_mac/UI_CURSOR_SIZENS.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_SIZENWSE.tif b/indra/newview/cursors_mac/UI_CURSOR_SIZENWSE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_SIZEWE.tif b/indra/newview/cursors_mac/UI_CURSOR_SIZEWE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLBUY.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLBUY.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLCAMERA.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLCAMERA.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLCREATE.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLCREATE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLFOCUS.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLFOCUS.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLGRAB.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLGRAB.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLLAND.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLLAND.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLMEDIAOPEN.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLMEDIAOPEN.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLOPEN.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLOPEN.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLPAN.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLPAN.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLPAUSE.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLPAUSE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLPICKOBJECT3.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLPICKOBJECT3.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLPLAY.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLPLAY.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLROTATE.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLROTATE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLSCALE.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLSCALE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLSIT.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLSIT.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLTRANSLATE.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLTRANSLATE.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_TOOLZOOMIN.tif b/indra/newview/cursors_mac/UI_CURSOR_TOOLZOOMIN.tif old mode 100644 new mode 100755 diff --git a/indra/newview/cursors_mac/UI_CURSOR_WORKING.tif b/indra/newview/cursors_mac/UI_CURSOR_WORKING.tif old mode 100644 new mode 100755 diff --git a/indra/newview/da.lproj/language.txt b/indra/newview/da.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/es.lproj/language.txt b/indra/newview/es.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/featuretable.txt b/indra/newview/featuretable.txt old mode 100644 new mode 100755 diff --git a/indra/newview/featuretable_linux.txt b/indra/newview/featuretable_linux.txt old mode 100644 new mode 100755 diff --git a/indra/newview/featuretable_mac.txt b/indra/newview/featuretable_mac.txt old mode 100644 new mode 100755 diff --git a/indra/newview/featuretable_solaris.txt b/indra/newview/featuretable_solaris.txt old mode 100644 new mode 100755 diff --git a/indra/newview/featuretable_xp.txt b/indra/newview/featuretable_xp.txt old mode 100644 new mode 100755 diff --git a/indra/newview/fmod_hidden_symbols.exp b/indra/newview/fmod_hidden_symbols.exp old mode 100644 new mode 100755 diff --git a/indra/newview/fmodwrapper.cpp b/indra/newview/fmodwrapper.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/fonts/DejaVu-license.txt b/indra/newview/fonts/DejaVu-license.txt old mode 100644 new mode 100755 diff --git a/indra/newview/fonts/DejaVuSans-Bold.ttf b/indra/newview/fonts/DejaVuSans-Bold.ttf old mode 100644 new mode 100755 diff --git a/indra/newview/fonts/DejaVuSans-BoldOblique.ttf b/indra/newview/fonts/DejaVuSans-BoldOblique.ttf old mode 100644 new mode 100755 diff --git a/indra/newview/fonts/DejaVuSans-Oblique.ttf b/indra/newview/fonts/DejaVuSans-Oblique.ttf old mode 100644 new mode 100755 diff --git a/indra/newview/fonts/DejaVuSans.ttf b/indra/newview/fonts/DejaVuSans.ttf old mode 100644 new mode 100755 diff --git a/indra/newview/fonts/DejaVuSansMono.ttf b/indra/newview/fonts/DejaVuSansMono.ttf old mode 100644 new mode 100755 diff --git a/indra/newview/fr.lproj/language.txt b/indra/newview/fr.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/generate_breakpad_symbols.py b/indra/newview/generate_breakpad_symbols.py old mode 100644 new mode 100755 diff --git a/indra/newview/gpu_table.txt b/indra/newview/gpu_table.txt old mode 100644 new mode 100755 diff --git a/indra/newview/groupchatlistener.cpp b/indra/newview/groupchatlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/groupchatlistener.h b/indra/newview/groupchatlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/hu.lproj/language.txt b/indra/newview/hu.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife.icns b/indra/newview/icons/beta/secondlife.icns old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife.ico b/indra/newview/icons/beta/secondlife.ico old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_128.png b/indra/newview/icons/beta/secondlife_128.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_16.png b/indra/newview/icons/beta/secondlife_16.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_256.BMP b/indra/newview/icons/beta/secondlife_256.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_256.png b/indra/newview/icons/beta/secondlife_256.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_32.png b/indra/newview/icons/beta/secondlife_32.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_48.png b/indra/newview/icons/beta/secondlife_48.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/beta/secondlife_512.png b/indra/newview/icons/beta/secondlife_512.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife.icns b/indra/newview/icons/development/secondlife.icns old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife.ico b/indra/newview/icons/development/secondlife.ico old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_128.png b/indra/newview/icons/development/secondlife_128.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_16.png b/indra/newview/icons/development/secondlife_16.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_256.BMP b/indra/newview/icons/development/secondlife_256.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_256.png b/indra/newview/icons/development/secondlife_256.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_32.png b/indra/newview/icons/development/secondlife_32.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_48.png b/indra/newview/icons/development/secondlife_48.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/development/secondlife_512.png b/indra/newview/icons/development/secondlife_512.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife.icns b/indra/newview/icons/project/secondlife.icns old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife.ico b/indra/newview/icons/project/secondlife.ico old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_128.png b/indra/newview/icons/project/secondlife_128.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_16.png b/indra/newview/icons/project/secondlife_16.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_256.BMP b/indra/newview/icons/project/secondlife_256.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_256.png b/indra/newview/icons/project/secondlife_256.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_32.png b/indra/newview/icons/project/secondlife_32.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_48.png b/indra/newview/icons/project/secondlife_48.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/project/secondlife_512.png b/indra/newview/icons/project/secondlife_512.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife.icns b/indra/newview/icons/release/secondlife.icns old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife.ico b/indra/newview/icons/release/secondlife.ico old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_128.png b/indra/newview/icons/release/secondlife_128.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_16.png b/indra/newview/icons/release/secondlife_16.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_256.BMP b/indra/newview/icons/release/secondlife_256.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_256.png b/indra/newview/icons/release/secondlife_256.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_32.png b/indra/newview/icons/release/secondlife_32.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_48.png b/indra/newview/icons/release/secondlife_48.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/release/secondlife_512.png b/indra/newview/icons/release/secondlife_512.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife.icns b/indra/newview/icons/test/secondlife.icns old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife.ico b/indra/newview/icons/test/secondlife.ico old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_128.png b/indra/newview/icons/test/secondlife_128.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_16.png b/indra/newview/icons/test/secondlife_16.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_256.BMP b/indra/newview/icons/test/secondlife_256.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_256.png b/indra/newview/icons/test/secondlife_256.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_32.png b/indra/newview/icons/test/secondlife_32.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_48.png b/indra/newview/icons/test/secondlife_48.png old mode 100644 new mode 100755 diff --git a/indra/newview/icons/test/secondlife_512.png b/indra/newview/icons/test/secondlife_512.png old mode 100644 new mode 100755 diff --git a/indra/newview/installers/darwin/dmg-cleanup.applescript b/indra/newview/installers/darwin/dmg-cleanup.applescript old mode 100644 new mode 100755 diff --git a/indra/newview/installers/darwin/fix_application_icon_position.sh b/indra/newview/installers/darwin/fix_application_icon_position.sh old mode 100644 new mode 100755 diff --git a/indra/newview/installers/darwin/release-dmg/Applications-alias.r b/indra/newview/installers/darwin/release-dmg/Applications-alias.r old mode 100644 new mode 100755 diff --git a/indra/newview/installers/darwin/release-dmg/_DS_Store b/indra/newview/installers/darwin/release-dmg/_DS_Store old mode 100644 new mode 100755 diff --git a/indra/newview/installers/darwin/release-dmg/_VolumeIcon.icns b/indra/newview/installers/darwin/release-dmg/_VolumeIcon.icns old mode 100644 new mode 100755 diff --git a/indra/newview/installers/darwin/release-dmg/background.jpg b/indra/newview/installers/darwin/release-dmg/background.jpg old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/FILES_ARE_UNICODE_UTF-16LE.txt b/indra/newview/installers/windows/FILES_ARE_UNICODE_UTF-16LE.txt old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/install_icon.BMP b/indra/newview/installers/windows/install_icon.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/install_icon.ico b/indra/newview/installers/windows/install_icon.ico old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_da.nsi b/indra/newview/installers/windows/lang_da.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_de.nsi b/indra/newview/installers/windows/lang_de.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_en-us.nsi b/indra/newview/installers/windows/lang_en-us.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_es.nsi b/indra/newview/installers/windows/lang_es.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_fr.nsi b/indra/newview/installers/windows/lang_fr.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_it.nsi b/indra/newview/installers/windows/lang_it.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_ja.nsi b/indra/newview/installers/windows/lang_ja.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_pl.nsi b/indra/newview/installers/windows/lang_pl.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_pt-br.nsi b/indra/newview/installers/windows/lang_pt-br.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_ru.nsi b/indra/newview/installers/windows/lang_ru.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_tr.nsi b/indra/newview/installers/windows/lang_tr.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/lang_zh.nsi b/indra/newview/installers/windows/lang_zh.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/language_menu.nsi b/indra/newview/installers/windows/language_menu.nsi old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/uninstall_icon.BMP b/indra/newview/installers/windows/uninstall_icon.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/installers/windows/uninstall_icon.ico b/indra/newview/installers/windows/uninstall_icon.ico old mode 100644 new mode 100755 diff --git a/indra/newview/it.lproj/language.txt b/indra/newview/it.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/licenses-linux.txt b/indra/newview/licenses-linux.txt old mode 100644 new mode 100755 diff --git a/indra/newview/licenses-mac.txt b/indra/newview/licenses-mac.txt old mode 100644 new mode 100755 diff --git a/indra/newview/licenses-solaris.txt b/indra/newview/licenses-solaris.txt old mode 100644 new mode 100755 diff --git a/indra/newview/licenses-win32.txt b/indra/newview/licenses-win32.txt old mode 100644 new mode 100755 diff --git a/indra/newview/linux_tools/client-readme-joystick.txt b/indra/newview/linux_tools/client-readme-joystick.txt old mode 100644 new mode 100755 diff --git a/indra/newview/linux_tools/client-readme-voice.txt b/indra/newview/linux_tools/client-readme-voice.txt old mode 100644 new mode 100755 diff --git a/indra/newview/linux_tools/client-readme.txt b/indra/newview/linux_tools/client-readme.txt old mode 100644 new mode 100755 diff --git a/indra/newview/llaccountingcostmanager.cpp b/indra/newview/llaccountingcostmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llaccountingcostmanager.h b/indra/newview/llaccountingcostmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentaccess.cpp b/indra/newview/llagentaccess.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentaccess.h b/indra/newview/llagentaccess.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentcamera.cpp b/indra/newview/llagentcamera.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentcamera.h b/indra/newview/llagentcamera.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentdata.cpp b/indra/newview/llagentdata.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentdata.h b/indra/newview/llagentdata.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentlanguage.cpp b/indra/newview/llagentlanguage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentlanguage.h b/indra/newview/llagentlanguage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentlistener.cpp b/indra/newview/llagentlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentlistener.h b/indra/newview/llagentlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentpicksinfo.cpp b/indra/newview/llagentpicksinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentpicksinfo.h b/indra/newview/llagentpicksinfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentpilot.cpp b/indra/newview/llagentpilot.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentpilot.h b/indra/newview/llagentpilot.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentui.cpp b/indra/newview/llagentui.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentui.h b/indra/newview/llagentui.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentwearables.h b/indra/newview/llagentwearables.h old mode 100644 new mode 100755 diff --git a/indra/newview/llagentwearablesfetch.cpp b/indra/newview/llagentwearablesfetch.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llagentwearablesfetch.h b/indra/newview/llagentwearablesfetch.h old mode 100644 new mode 100755 diff --git a/indra/newview/llanimstatelabels.cpp b/indra/newview/llanimstatelabels.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llanimstatelabels.h b/indra/newview/llanimstatelabels.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappcorehttp.cpp b/indra/newview/llappcorehttp.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappcorehttp.h b/indra/newview/llappcorehttp.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappearance.h b/indra/newview/llappearance.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewer.h b/indra/newview/llappviewer.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux.cpp b/indra/newview/llappviewerlinux.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux.h b/indra/newview/llappviewerlinux.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux_api.h b/indra/newview/llappviewerlinux_api.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux_api.xml b/indra/newview/llappviewerlinux_api.xml old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux_api_dbus.cpp b/indra/newview/llappviewerlinux_api_dbus.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux_api_dbus.h b/indra/newview/llappviewerlinux_api_dbus.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlinux_api_dbus_syms_raw.inc b/indra/newview/llappviewerlinux_api_dbus_syms_raw.inc old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlistener.cpp b/indra/newview/llappviewerlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerlistener.h b/indra/newview/llappviewerlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewermacosx.cpp b/indra/newview/llappviewermacosx.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewermacosx.h b/indra/newview/llappviewermacosx.h old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerwin32.cpp b/indra/newview/llappviewerwin32.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llappviewerwin32.h b/indra/newview/llappviewerwin32.h old mode 100644 new mode 100755 diff --git a/indra/newview/llassetuploadqueue.cpp b/indra/newview/llassetuploadqueue.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llassetuploadqueue.h b/indra/newview/llassetuploadqueue.h old mode 100644 new mode 100755 diff --git a/indra/newview/llassetuploadresponders.cpp b/indra/newview/llassetuploadresponders.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llassetuploadresponders.h b/indra/newview/llassetuploadresponders.h old mode 100644 new mode 100755 diff --git a/indra/newview/llattachmentsmgr.cpp b/indra/newview/llattachmentsmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llattachmentsmgr.h b/indra/newview/llattachmentsmgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llaudiosourcevo.cpp b/indra/newview/llaudiosourcevo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llaudiosourcevo.h b/indra/newview/llaudiosourcevo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llautoreplace.cpp b/indra/newview/llautoreplace.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llautoreplace.h b/indra/newview/llautoreplace.h old mode 100644 new mode 100755 diff --git a/indra/newview/llavataractions.h b/indra/newview/llavataractions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llavatariconctrl.h b/indra/newview/llavatariconctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llavatarlist.cpp b/indra/newview/llavatarlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llavatarlist.h b/indra/newview/llavatarlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llavatarlistitem.cpp b/indra/newview/llavatarlistitem.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llavatarlistitem.h b/indra/newview/llavatarlistitem.h old mode 100644 new mode 100755 diff --git a/indra/newview/llavatarpropertiesprocessor.cpp b/indra/newview/llavatarpropertiesprocessor.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llavatarpropertiesprocessor.h b/indra/newview/llavatarpropertiesprocessor.h old mode 100644 new mode 100755 diff --git a/indra/newview/llblockedlistitem.cpp b/indra/newview/llblockedlistitem.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llblockedlistitem.h b/indra/newview/llblockedlistitem.h old mode 100644 new mode 100755 diff --git a/indra/newview/llblocklist.cpp b/indra/newview/llblocklist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llblocklist.h b/indra/newview/llblocklist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llbox.cpp b/indra/newview/llbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llbox.h b/indra/newview/llbox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llbreadcrumbview.cpp b/indra/newview/llbreadcrumbview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llbreadcrumbview.h b/indra/newview/llbreadcrumbview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llbreastmotion.cpp b/indra/newview/llbreastmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llbreastmotion.h b/indra/newview/llbreastmotion.h old mode 100644 new mode 100755 diff --git a/indra/newview/llbrowsernotification.cpp b/indra/newview/llbrowsernotification.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llbuycurrencyhtml.cpp b/indra/newview/llbuycurrencyhtml.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llbuycurrencyhtml.h b/indra/newview/llbuycurrencyhtml.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcallbacklist.cpp b/indra/newview/llcallbacklist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcallbacklist.h b/indra/newview/llcallbacklist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcallingcard.cpp b/indra/newview/llcallingcard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcallingcard.h b/indra/newview/llcallingcard.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcapabilitylistener.cpp b/indra/newview/llcapabilitylistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcapabilitylistener.h b/indra/newview/llcapabilitylistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcapabilityprovider.h b/indra/newview/llcapabilityprovider.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcaphttpsender.cpp b/indra/newview/llcaphttpsender.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcaphttpsender.h b/indra/newview/llcaphttpsender.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchannelmanager.cpp b/indra/newview/llchannelmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchannelmanager.h b/indra/newview/llchannelmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchatbar.cpp b/indra/newview/llchatbar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchatbar.h b/indra/newview/llchatbar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchathistory.h b/indra/newview/llchathistory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchatitemscontainerctrl.cpp b/indra/newview/llchatitemscontainerctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchatitemscontainerctrl.h b/indra/newview/llchatitemscontainerctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchatmsgbox.cpp b/indra/newview/llchatmsgbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchatmsgbox.h b/indra/newview/llchatmsgbox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchiclet.cpp b/indra/newview/llchiclet.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchiclet.h b/indra/newview/llchiclet.h old mode 100644 new mode 100755 diff --git a/indra/newview/llchicletbar.cpp b/indra/newview/llchicletbar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llchicletbar.h b/indra/newview/llchicletbar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llclassifiedinfo.cpp b/indra/newview/llclassifiedinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llclassifiedinfo.h b/indra/newview/llclassifiedinfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llclassifiedstatsresponder.cpp b/indra/newview/llclassifiedstatsresponder.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llclassifiedstatsresponder.h b/indra/newview/llclassifiedstatsresponder.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcofwearables.cpp b/indra/newview/llcofwearables.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcofwearables.h b/indra/newview/llcofwearables.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcolorswatch.cpp b/indra/newview/llcolorswatch.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcolorswatch.h b/indra/newview/llcolorswatch.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcommanddispatcherlistener.cpp b/indra/newview/llcommanddispatcherlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcommanddispatcherlistener.h b/indra/newview/llcommanddispatcherlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcommandhandler.h b/indra/newview/llcommandhandler.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcommandlineparser.cpp b/indra/newview/llcommandlineparser.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcommandlineparser.h b/indra/newview/llcommandlineparser.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcommunicationchannel.cpp b/indra/newview/llcommunicationchannel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcommunicationchannel.h b/indra/newview/llcommunicationchannel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcompilequeue.cpp b/indra/newview/llcompilequeue.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcompilequeue.h b/indra/newview/llcompilequeue.h old mode 100644 new mode 100755 diff --git a/indra/newview/llconfirmationmanager.cpp b/indra/newview/llconfirmationmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llconfirmationmanager.h b/indra/newview/llconfirmationmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationlog.cpp b/indra/newview/llconversationlog.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationlog.h b/indra/newview/llconversationlog.h old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationloglist.cpp b/indra/newview/llconversationloglist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationloglist.h b/indra/newview/llconversationloglist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationloglistitem.cpp b/indra/newview/llconversationloglistitem.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationloglistitem.h b/indra/newview/llconversationloglistitem.h old mode 100644 new mode 100755 diff --git a/indra/newview/llconversationmodel.cpp b/indra/newview/llconversationmodel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcurrencyuimanager.cpp b/indra/newview/llcurrencyuimanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcurrencyuimanager.h b/indra/newview/llcurrencyuimanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llcylinder.cpp b/indra/newview/llcylinder.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llcylinder.h b/indra/newview/llcylinder.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldateutil.cpp b/indra/newview/lldateutil.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldateutil.h b/indra/newview/lldateutil.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldaycyclemanager.cpp b/indra/newview/lldaycyclemanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldaycyclemanager.h b/indra/newview/lldaycyclemanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldebugmessagebox.cpp b/indra/newview/lldebugmessagebox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldebugmessagebox.h b/indra/newview/lldebugmessagebox.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldebugview.cpp b/indra/newview/lldebugview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldebugview.h b/indra/newview/lldebugview.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldeferredsounds.cpp b/indra/newview/lldeferredsounds.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldeferredsounds.h b/indra/newview/lldeferredsounds.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldelayedgestureerror.cpp b/indra/newview/lldelayedgestureerror.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldelayedgestureerror.h b/indra/newview/lldelayedgestureerror.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldirpicker.cpp b/indra/newview/lldirpicker.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldirpicker.h b/indra/newview/lldirpicker.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldndbutton.cpp b/indra/newview/lldndbutton.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldndbutton.h b/indra/newview/lldndbutton.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldonotdisturbnotificationstorage.cpp b/indra/newview/lldonotdisturbnotificationstorage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldonotdisturbnotificationstorage.h b/indra/newview/lldonotdisturbnotificationstorage.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawable.h b/indra/newview/lldrawable.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpool.cpp b/indra/newview/lldrawpool.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpool.h b/indra/newview/lldrawpool.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolalpha.h b/indra/newview/lldrawpoolalpha.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolavatar.h b/indra/newview/lldrawpoolavatar.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolbump.cpp b/indra/newview/lldrawpoolbump.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolbump.h b/indra/newview/lldrawpoolbump.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolground.cpp b/indra/newview/lldrawpoolground.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolground.h b/indra/newview/lldrawpoolground.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolsimple.cpp b/indra/newview/lldrawpoolsimple.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolsimple.h b/indra/newview/lldrawpoolsimple.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolsky.cpp b/indra/newview/lldrawpoolsky.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolsky.h b/indra/newview/lldrawpoolsky.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolterrain.cpp b/indra/newview/lldrawpoolterrain.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolterrain.h b/indra/newview/lldrawpoolterrain.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpooltree.cpp b/indra/newview/lldrawpooltree.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpooltree.h b/indra/newview/lldrawpooltree.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolwater.cpp b/indra/newview/lldrawpoolwater.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolwater.h b/indra/newview/lldrawpoolwater.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolwlsky.cpp b/indra/newview/lldrawpoolwlsky.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldrawpoolwlsky.h b/indra/newview/lldrawpoolwlsky.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldriverparam.cpp b/indra/newview/lldriverparam.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldriverparam.h b/indra/newview/lldriverparam.h old mode 100644 new mode 100755 diff --git a/indra/newview/lldynamictexture.cpp b/indra/newview/lldynamictexture.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lldynamictexture.h b/indra/newview/lldynamictexture.h old mode 100644 new mode 100755 diff --git a/indra/newview/llemote.cpp b/indra/newview/llemote.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llemote.h b/indra/newview/llemote.h old mode 100644 new mode 100755 diff --git a/indra/newview/llenvmanager.cpp b/indra/newview/llenvmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llenvmanager.h b/indra/newview/llenvmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llestateinfomodel.cpp b/indra/newview/llestateinfomodel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llestateinfomodel.h b/indra/newview/llestateinfomodel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lleventnotifier.cpp b/indra/newview/lleventnotifier.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lleventnotifier.h b/indra/newview/lleventnotifier.h old mode 100644 new mode 100755 diff --git a/indra/newview/lleventpoll.cpp b/indra/newview/lleventpoll.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lleventpoll.h b/indra/newview/lleventpoll.h old mode 100644 new mode 100755 diff --git a/indra/newview/llexpandabletextbox.cpp b/indra/newview/llexpandabletextbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llexpandabletextbox.h b/indra/newview/llexpandabletextbox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llexternaleditor.cpp b/indra/newview/llexternaleditor.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llexternaleditor.h b/indra/newview/llexternaleditor.h old mode 100644 new mode 100755 diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llface.h b/indra/newview/llface.h old mode 100644 new mode 100755 diff --git a/indra/newview/llface.inl b/indra/newview/llface.inl old mode 100644 new mode 100755 diff --git a/indra/newview/llfasttimerview.cpp b/indra/newview/llfasttimerview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfasttimerview.h b/indra/newview/llfasttimerview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfavoritesbar.cpp b/indra/newview/llfavoritesbar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfavoritesbar.h b/indra/newview/llfavoritesbar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfeaturemanager.h b/indra/newview/llfeaturemanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfilepicker.cpp b/indra/newview/llfilepicker.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfilepicker.h b/indra/newview/llfilepicker.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfilteredwearablelist.cpp b/indra/newview/llfilteredwearablelist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfilteredwearablelist.h b/indra/newview/llfilteredwearablelist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfirstuse.cpp b/indra/newview/llfirstuse.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfirstuse.h b/indra/newview/llfirstuse.h old mode 100644 new mode 100755 diff --git a/indra/newview/llflexibleobject.cpp b/indra/newview/llflexibleobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llflexibleobject.h b/indra/newview/llflexibleobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterabout.cpp b/indra/newview/llfloaterabout.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterabout.h b/indra/newview/llfloaterabout.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterauction.cpp b/indra/newview/llfloaterauction.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterauction.h b/indra/newview/llfloaterauction.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterautoreplacesettings.cpp b/indra/newview/llfloaterautoreplacesettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterautoreplacesettings.h b/indra/newview/llfloaterautoreplacesettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateravatar.cpp b/indra/newview/llfloateravatar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateravatar.h b/indra/newview/llfloateravatar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateravatarpicker.cpp b/indra/newview/llfloateravatarpicker.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateravatarpicker.h b/indra/newview/llfloateravatarpicker.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateravatartextures.cpp b/indra/newview/llfloateravatartextures.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateravatartextures.h b/indra/newview/llfloateravatartextures.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbeacons.cpp b/indra/newview/llfloaterbeacons.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbeacons.h b/indra/newview/llfloaterbeacons.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuildoptions.cpp b/indra/newview/llfloaterbuildoptions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuildoptions.h b/indra/newview/llfloaterbuildoptions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbulkpermission.cpp b/indra/newview/llfloaterbulkpermission.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbulkpermission.h b/indra/newview/llfloaterbulkpermission.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbump.cpp b/indra/newview/llfloaterbump.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbump.h b/indra/newview/llfloaterbump.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuy.cpp b/indra/newview/llfloaterbuy.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuy.h b/indra/newview/llfloaterbuy.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuycontents.cpp b/indra/newview/llfloaterbuycontents.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuycontents.h b/indra/newview/llfloaterbuycontents.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuycurrency.cpp b/indra/newview/llfloaterbuycurrency.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuycurrency.h b/indra/newview/llfloaterbuycurrency.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuycurrencyhtml.cpp b/indra/newview/llfloaterbuycurrencyhtml.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuycurrencyhtml.h b/indra/newview/llfloaterbuycurrencyhtml.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuyland.cpp b/indra/newview/llfloaterbuyland.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbuyland.h b/indra/newview/llfloaterbuyland.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbvhpreview.cpp b/indra/newview/llfloaterbvhpreview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterbvhpreview.h b/indra/newview/llfloaterbvhpreview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatercamera.cpp b/indra/newview/llfloatercamera.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatercamera.h b/indra/newview/llfloatercamera.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterchatvoicevolume.cpp b/indra/newview/llfloaterchatvoicevolume.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterchatvoicevolume.h b/indra/newview/llfloaterchatvoicevolume.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatercolorpicker.cpp b/indra/newview/llfloatercolorpicker.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatercolorpicker.h b/indra/newview/llfloatercolorpicker.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterconversationlog.cpp b/indra/newview/llfloaterconversationlog.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterconversationlog.h b/indra/newview/llfloaterconversationlog.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterconversationpreview.cpp b/indra/newview/llfloaterconversationpreview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterconversationpreview.h b/indra/newview/llfloaterconversationpreview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterdeleteenvpreset.cpp b/indra/newview/llfloaterdeleteenvpreset.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterdeleteenvpreset.h b/indra/newview/llfloaterdeleteenvpreset.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterdestinations.cpp b/indra/newview/llfloaterdestinations.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterdestinations.h b/indra/newview/llfloaterdestinations.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterdisplayname.cpp b/indra/newview/llfloaterdisplayname.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterdisplayname.h b/indra/newview/llfloaterdisplayname.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatereditdaycycle.cpp b/indra/newview/llfloatereditdaycycle.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatereditdaycycle.h b/indra/newview/llfloatereditdaycycle.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatereditsky.cpp b/indra/newview/llfloatereditsky.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatereditsky.h b/indra/newview/llfloatereditsky.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatereditwater.cpp b/indra/newview/llfloatereditwater.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatereditwater.h b/indra/newview/llfloatereditwater.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterenvironmentsettings.cpp b/indra/newview/llfloaterenvironmentsettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterenvironmentsettings.h b/indra/newview/llfloaterenvironmentsettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterevent.cpp b/indra/newview/llfloaterevent.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterevent.h b/indra/newview/llfloaterevent.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterfonttest.cpp b/indra/newview/llfloaterfonttest.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterfonttest.h b/indra/newview/llfloaterfonttest.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergesture.cpp b/indra/newview/llfloatergesture.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergesture.h b/indra/newview/llfloatergesture.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergodtools.cpp b/indra/newview/llfloatergodtools.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergodtools.h b/indra/newview/llfloatergodtools.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergroupinvite.cpp b/indra/newview/llfloatergroupinvite.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergroupinvite.h b/indra/newview/llfloatergroupinvite.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergroups.cpp b/indra/newview/llfloatergroups.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatergroups.h b/indra/newview/llfloatergroups.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhandler.cpp b/indra/newview/llfloaterhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhandler.h b/indra/newview/llfloaterhandler.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhardwaresettings.cpp b/indra/newview/llfloaterhardwaresettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhardwaresettings.h b/indra/newview/llfloaterhardwaresettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhelpbrowser.cpp b/indra/newview/llfloaterhelpbrowser.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhelpbrowser.h b/indra/newview/llfloaterhelpbrowser.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhud.cpp b/indra/newview/llfloaterhud.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterhud.h b/indra/newview/llfloaterhud.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimagepreview.cpp b/indra/newview/llfloaterimagepreview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimagepreview.h b/indra/newview/llfloaterimagepreview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimcontainer.h b/indra/newview/llfloaterimcontainer.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimnearbychat.cpp b/indra/newview/llfloaterimnearbychat.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimnearbychat.h b/indra/newview/llfloaterimnearbychat.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimnearbychathandler.cpp b/indra/newview/llfloaterimnearbychathandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimnearbychathandler.h b/indra/newview/llfloaterimnearbychathandler.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimnearbychatlistener.cpp b/indra/newview/llfloaterimnearbychatlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimnearbychatlistener.h b/indra/newview/llfloaterimnearbychatlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimsession.cpp b/indra/newview/llfloaterimsession.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimsession.h b/indra/newview/llfloaterimsession.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterinspect.cpp b/indra/newview/llfloaterinspect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterinspect.h b/indra/newview/llfloaterinspect.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterinventory.cpp b/indra/newview/llfloaterinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterinventory.h b/indra/newview/llfloaterinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterjoystick.cpp b/indra/newview/llfloaterjoystick.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterjoystick.h b/indra/newview/llfloaterjoystick.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterlagmeter.cpp b/indra/newview/llfloaterlagmeter.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterlagmeter.h b/indra/newview/llfloaterlagmeter.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterland.h b/indra/newview/llfloaterland.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterlandholdings.cpp b/indra/newview/llfloaterlandholdings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterlandholdings.h b/indra/newview/llfloaterlandholdings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermap.cpp b/indra/newview/llfloatermap.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermap.h b/indra/newview/llfloatermap.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermediasettings.cpp b/indra/newview/llfloatermediasettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermediasettings.h b/indra/newview/llfloatermediasettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermemleak.cpp b/indra/newview/llfloatermemleak.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermemleak.h b/indra/newview/llfloatermemleak.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermodelpreview.h b/indra/newview/llfloatermodelpreview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermodeluploadbase.cpp b/indra/newview/llfloatermodeluploadbase.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatermodeluploadbase.h b/indra/newview/llfloatermodeluploadbase.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaternamedesc.cpp b/indra/newview/llfloaternamedesc.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaternamedesc.h b/indra/newview/llfloaternamedesc.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaternotificationsconsole.cpp b/indra/newview/llfloaternotificationsconsole.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaternotificationsconsole.h b/indra/newview/llfloaternotificationsconsole.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterobjectweights.cpp b/indra/newview/llfloaterobjectweights.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterobjectweights.h b/indra/newview/llfloaterobjectweights.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateropenobject.cpp b/indra/newview/llfloateropenobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateropenobject.h b/indra/newview/llfloateropenobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateroutbox.cpp b/indra/newview/llfloateroutbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateroutbox.h b/indra/newview/llfloateroutbox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindingcharacters.cpp b/indra/newview/llfloaterpathfindingcharacters.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindingcharacters.h b/indra/newview/llfloaterpathfindingcharacters.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindingconsole.cpp b/indra/newview/llfloaterpathfindingconsole.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindingconsole.h b/indra/newview/llfloaterpathfindingconsole.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindinglinksets.h b/indra/newview/llfloaterpathfindinglinksets.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindingobjects.cpp b/indra/newview/llfloaterpathfindingobjects.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpathfindingobjects.h b/indra/newview/llfloaterpathfindingobjects.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpay.cpp b/indra/newview/llfloaterpay.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpay.h b/indra/newview/llfloaterpay.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterperms.cpp b/indra/newview/llfloaterperms.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterperms.h b/indra/newview/llfloaterperms.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpostprocess.cpp b/indra/newview/llfloaterpostprocess.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpostprocess.h b/indra/newview/llfloaterpostprocess.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterproperties.cpp b/indra/newview/llfloaterproperties.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterproperties.h b/indra/newview/llfloaterproperties.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterregiondebugconsole.cpp b/indra/newview/llfloaterregiondebugconsole.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterregiondebugconsole.h b/indra/newview/llfloaterregiondebugconsole.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterregioninfo.h b/indra/newview/llfloaterregioninfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterreporter.cpp b/indra/newview/llfloaterreporter.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterreporter.h b/indra/newview/llfloaterreporter.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterscriptdebug.cpp b/indra/newview/llfloaterscriptdebug.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterscriptdebug.h b/indra/newview/llfloaterscriptdebug.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterscriptlimits.cpp b/indra/newview/llfloaterscriptlimits.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterscriptlimits.h b/indra/newview/llfloaterscriptlimits.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersearch.cpp b/indra/newview/llfloatersearch.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersearch.h b/indra/newview/llfloatersearch.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersellland.cpp b/indra/newview/llfloatersellland.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersellland.h b/indra/newview/llfloatersellland.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersettingsdebug.cpp b/indra/newview/llfloatersettingsdebug.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersettingsdebug.h b/indra/newview/llfloatersettingsdebug.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersidepanelcontainer.cpp b/indra/newview/llfloatersidepanelcontainer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersidepanelcontainer.h b/indra/newview/llfloatersidepanelcontainer.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersnapshot.cpp b/indra/newview/llfloatersnapshot.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersnapshot.h b/indra/newview/llfloatersnapshot.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersounddevices.cpp b/indra/newview/llfloatersounddevices.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatersounddevices.h b/indra/newview/llfloatersounddevices.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterspellchecksettings.cpp b/indra/newview/llfloaterspellchecksettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterspellchecksettings.h b/indra/newview/llfloaterspellchecksettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertelehub.cpp b/indra/newview/llfloatertelehub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertelehub.h b/indra/newview/llfloatertelehub.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertestinspectors.cpp b/indra/newview/llfloatertestinspectors.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertestinspectors.h b/indra/newview/llfloatertestinspectors.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertestlistview.cpp b/indra/newview/llfloatertestlistview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertestlistview.h b/indra/newview/llfloatertestlistview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertexturefetchdebugger.cpp b/indra/newview/llfloatertexturefetchdebugger.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertexturefetchdebugger.h b/indra/newview/llfloatertexturefetchdebugger.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertools.h b/indra/newview/llfloatertools.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertopobjects.cpp b/indra/newview/llfloatertopobjects.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertopobjects.h b/indra/newview/llfloatertopobjects.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertos.cpp b/indra/newview/llfloatertos.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertos.h b/indra/newview/llfloatertos.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertoybox.cpp b/indra/newview/llfloatertoybox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertoybox.h b/indra/newview/llfloatertoybox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertranslationsettings.cpp b/indra/newview/llfloatertranslationsettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatertranslationsettings.h b/indra/newview/llfloatertranslationsettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateruipreview.cpp b/indra/newview/llfloateruipreview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloateruipreview.h b/indra/newview/llfloateruipreview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterurlentry.cpp b/indra/newview/llfloaterurlentry.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterurlentry.h b/indra/newview/llfloaterurlentry.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatervoiceeffect.cpp b/indra/newview/llfloatervoiceeffect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatervoiceeffect.h b/indra/newview/llfloatervoiceeffect.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatervoicevolume.cpp b/indra/newview/llfloatervoicevolume.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloatervoicevolume.h b/indra/newview/llfloatervoicevolume.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwebcontent.cpp b/indra/newview/llfloaterwebcontent.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwebcontent.h b/indra/newview/llfloaterwebcontent.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwebprofile.cpp b/indra/newview/llfloaterwebprofile.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwebprofile.h b/indra/newview/llfloaterwebprofile.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwhitelistentry.cpp b/indra/newview/llfloaterwhitelistentry.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwhitelistentry.h b/indra/newview/llfloaterwhitelistentry.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwindowsize.cpp b/indra/newview/llfloaterwindowsize.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterwindowsize.h b/indra/newview/llfloaterwindowsize.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfloaterworldmap.h b/indra/newview/llfloaterworldmap.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfolderviewmodelinventory.cpp b/indra/newview/llfolderviewmodelinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfolderviewmodelinventory.h b/indra/newview/llfolderviewmodelinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfollowcam.cpp b/indra/newview/llfollowcam.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfollowcam.h b/indra/newview/llfollowcam.h old mode 100644 new mode 100755 diff --git a/indra/newview/llfriendcard.cpp b/indra/newview/llfriendcard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llfriendcard.h b/indra/newview/llfriendcard.h old mode 100644 new mode 100755 diff --git a/indra/newview/llgesturelistener.cpp b/indra/newview/llgesturelistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgesturelistener.h b/indra/newview/llgesturelistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llgesturemgr.cpp b/indra/newview/llgesturemgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgesturemgr.h b/indra/newview/llgesturemgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llgiveinventory.cpp b/indra/newview/llgiveinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgiveinventory.h b/indra/newview/llgiveinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llglsandbox.cpp b/indra/newview/llglsandbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgroupactions.cpp b/indra/newview/llgroupactions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgroupactions.h b/indra/newview/llgroupactions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llgroupiconctrl.cpp b/indra/newview/llgroupiconctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgroupiconctrl.h b/indra/newview/llgroupiconctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llgrouplist.cpp b/indra/newview/llgrouplist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgrouplist.h b/indra/newview/llgrouplist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llgroupmgr.cpp b/indra/newview/llgroupmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llgroupmgr.h b/indra/newview/llgroupmgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhints.cpp b/indra/newview/llhints.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhints.h b/indra/newview/llhints.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhomelocationresponder.cpp b/indra/newview/llhomelocationresponder.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhomelocationresponder.h b/indra/newview/llhomelocationresponder.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffect.cpp b/indra/newview/llhudeffect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffect.h b/indra/newview/llhudeffect.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectbeam.cpp b/indra/newview/llhudeffectbeam.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectbeam.h b/indra/newview/llhudeffectbeam.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectblob.cpp b/indra/newview/llhudeffectblob.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectblob.h b/indra/newview/llhudeffectblob.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectlookat.cpp b/indra/newview/llhudeffectlookat.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectlookat.h b/indra/newview/llhudeffectlookat.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectpointat.cpp b/indra/newview/llhudeffectpointat.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffectpointat.h b/indra/newview/llhudeffectpointat.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffecttrail.cpp b/indra/newview/llhudeffecttrail.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudeffecttrail.h b/indra/newview/llhudeffecttrail.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudicon.cpp b/indra/newview/llhudicon.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudicon.h b/indra/newview/llhudicon.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudmanager.cpp b/indra/newview/llhudmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudmanager.h b/indra/newview/llhudmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudnametag.cpp b/indra/newview/llhudnametag.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudnametag.h b/indra/newview/llhudnametag.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudobject.cpp b/indra/newview/llhudobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudobject.h b/indra/newview/llhudobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudrender.cpp b/indra/newview/llhudrender.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudrender.h b/indra/newview/llhudrender.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudtext.cpp b/indra/newview/llhudtext.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudtext.h b/indra/newview/llhudtext.h old mode 100644 new mode 100755 diff --git a/indra/newview/llhudview.cpp b/indra/newview/llhudview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llhudview.h b/indra/newview/llhudview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llimhandler.cpp b/indra/newview/llimhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llimpanel.cpp b/indra/newview/llimpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llimpanel.h b/indra/newview/llimpanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llimview.h b/indra/newview/llimview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinspect.cpp b/indra/newview/llinspect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinspect.h b/indra/newview/llinspect.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectavatar.cpp b/indra/newview/llinspectavatar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectavatar.h b/indra/newview/llinspectavatar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectgroup.cpp b/indra/newview/llinspectgroup.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectgroup.h b/indra/newview/llinspectgroup.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectobject.cpp b/indra/newview/llinspectobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectobject.h b/indra/newview/llinspectobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectremoteobject.cpp b/indra/newview/llinspectremoteobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinspectremoteobject.h b/indra/newview/llinspectremoteobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinspecttoast.cpp b/indra/newview/llinspecttoast.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinspecttoast.h b/indra/newview/llinspecttoast.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryactions.h b/indra/newview/llinventoryactions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryclipboard.cpp b/indra/newview/llinventoryclipboard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryclipboard.h b/indra/newview/llinventoryclipboard.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryfunctions.h b/indra/newview/llinventoryfunctions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryicon.cpp b/indra/newview/llinventoryicon.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryicon.h b/indra/newview/llinventoryicon.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryitemslist.cpp b/indra/newview/llinventoryitemslist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryitemslist.h b/indra/newview/llinventoryitemslist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorylistitem.cpp b/indra/newview/llinventorylistitem.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorylistitem.h b/indra/newview/llinventorylistitem.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorymodel.h b/indra/newview/llinventorymodel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorymodelbackgroundfetch.cpp b/indra/newview/llinventorymodelbackgroundfetch.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorymodelbackgroundfetch.h b/indra/newview/llinventorymodelbackgroundfetch.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryobserver.cpp b/indra/newview/llinventoryobserver.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventoryobserver.h b/indra/newview/llinventoryobserver.h old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lljoystickbutton.cpp b/indra/newview/lljoystickbutton.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lljoystickbutton.h b/indra/newview/lljoystickbutton.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllandmarkactions.cpp b/indra/newview/lllandmarkactions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllandmarkactions.h b/indra/newview/lllandmarkactions.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllandmarklist.cpp b/indra/newview/lllandmarklist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllandmarklist.h b/indra/newview/lllandmarklist.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllightconstants.h b/indra/newview/lllightconstants.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllistbrowser.cpp b/indra/newview/lllistbrowser.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllistbrowser.h b/indra/newview/lllistbrowser.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllistcontextmenu.cpp b/indra/newview/lllistcontextmenu.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllistcontextmenu.h b/indra/newview/lllistcontextmenu.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllistview.cpp b/indra/newview/lllistview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllistview.h b/indra/newview/lllistview.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllocalbitmaps.cpp b/indra/newview/lllocalbitmaps.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllocalbitmaps.h b/indra/newview/lllocalbitmaps.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllocaltextureobject.cpp b/indra/newview/lllocaltextureobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllocaltextureobject.h b/indra/newview/lllocaltextureobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllocationhistory.cpp b/indra/newview/lllocationhistory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllocationhistory.h b/indra/newview/lllocationhistory.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllocationinputctrl.cpp b/indra/newview/lllocationinputctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllocationinputctrl.h b/indra/newview/lllocationinputctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllogchat.cpp b/indra/newview/lllogchat.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllogchat.h b/indra/newview/lllogchat.h old mode 100644 new mode 100755 diff --git a/indra/newview/llloginhandler.cpp b/indra/newview/llloginhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llloginhandler.h b/indra/newview/llloginhandler.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lllogininstance.h b/indra/newview/lllogininstance.h old mode 100644 new mode 100755 diff --git a/indra/newview/lllookshistorypanel.h b/indra/newview/lllookshistorypanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmachineid.cpp b/indra/newview/llmachineid.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmachineid.h b/indra/newview/llmachineid.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmainlooprepeater.cpp b/indra/newview/llmainlooprepeater.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmainlooprepeater.h b/indra/newview/llmainlooprepeater.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmanip.cpp b/indra/newview/llmanip.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmanip.h b/indra/newview/llmanip.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmaniprotate.cpp b/indra/newview/llmaniprotate.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmaniprotate.h b/indra/newview/llmaniprotate.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmanipscale.cpp b/indra/newview/llmanipscale.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmanipscale.h b/indra/newview/llmanipscale.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmaniptranslate.cpp b/indra/newview/llmaniptranslate.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmaniptranslate.h b/indra/newview/llmaniptranslate.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmarketplacefunctions.cpp b/indra/newview/llmarketplacefunctions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmarketplacefunctions.h b/indra/newview/llmarketplacefunctions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmarketplacenotifications.cpp b/indra/newview/llmarketplacenotifications.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmarketplacenotifications.h b/indra/newview/llmarketplacenotifications.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmediactrl.cpp b/indra/newview/llmediactrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmediactrl.h b/indra/newview/llmediactrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmediadataclient.cpp b/indra/newview/llmediadataclient.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmediadataclient.h b/indra/newview/llmediadataclient.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmenuoptionpathfindingrebakenavmesh.cpp b/indra/newview/llmenuoptionpathfindingrebakenavmesh.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmenuoptionpathfindingrebakenavmesh.h b/indra/newview/llmenuoptionpathfindingrebakenavmesh.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmeshrepository.h b/indra/newview/llmeshrepository.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmimetypes.cpp b/indra/newview/llmimetypes.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmimetypes.h b/indra/newview/llmimetypes.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmorphview.cpp b/indra/newview/llmorphview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmorphview.h b/indra/newview/llmorphview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmoveview.cpp b/indra/newview/llmoveview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmoveview.h b/indra/newview/llmoveview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llmutelist.cpp b/indra/newview/llmutelist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llmutelist.h b/indra/newview/llmutelist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnamebox.cpp b/indra/newview/llnamebox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnamebox.h b/indra/newview/llnamebox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnameeditor.cpp b/indra/newview/llnameeditor.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnameeditor.h b/indra/newview/llnameeditor.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnamelistctrl.cpp b/indra/newview/llnamelistctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnamelistctrl.h b/indra/newview/llnamelistctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnavigationbar.cpp b/indra/newview/llnavigationbar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnavigationbar.h b/indra/newview/llnavigationbar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnetmap.cpp b/indra/newview/llnetmap.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnetmap.h b/indra/newview/llnetmap.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationalerthandler.cpp b/indra/newview/llnotificationalerthandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationgrouphandler.cpp b/indra/newview/llnotificationgrouphandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationhandler.h b/indra/newview/llnotificationhandler.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationhandlerutil.cpp b/indra/newview/llnotificationhandlerutil.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationhinthandler.cpp b/indra/newview/llnotificationhinthandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationmanager.cpp b/indra/newview/llnotificationmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationmanager.h b/indra/newview/llnotificationmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationofferhandler.cpp b/indra/newview/llnotificationofferhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationscripthandler.cpp b/indra/newview/llnotificationscripthandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationstorage.cpp b/indra/newview/llnotificationstorage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationstorage.h b/indra/newview/llnotificationstorage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llnotificationtiphandler.cpp b/indra/newview/llnotificationtiphandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lloutfitobserver.cpp b/indra/newview/lloutfitobserver.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lloutfitobserver.h b/indra/newview/lloutfitobserver.h old mode 100644 new mode 100755 diff --git a/indra/newview/lloutfitslist.cpp b/indra/newview/lloutfitslist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lloutfitslist.h b/indra/newview/lloutfitslist.h old mode 100644 new mode 100755 diff --git a/indra/newview/lloutputmonitorctrl.cpp b/indra/newview/lloutputmonitorctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lloutputmonitorctrl.h b/indra/newview/lloutputmonitorctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelappearancetab.cpp b/indra/newview/llpanelappearancetab.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelappearancetab.h b/indra/newview/llpanelappearancetab.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelavatar.cpp b/indra/newview/llpanelavatar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelavatar.h b/indra/newview/llpanelavatar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelavatartag.cpp b/indra/newview/llpanelavatartag.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelavatartag.h b/indra/newview/llpanelavatartag.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelblockedlist.cpp b/indra/newview/llpanelblockedlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelblockedlist.h b/indra/newview/llpanelblockedlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelclassified.cpp b/indra/newview/llpanelclassified.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelclassified.h b/indra/newview/llpanelclassified.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelcontents.cpp b/indra/newview/llpanelcontents.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelcontents.h b/indra/newview/llpanelcontents.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneleditwearable.cpp b/indra/newview/llpaneleditwearable.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneleditwearable.h b/indra/newview/llpaneleditwearable.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelface.h b/indra/newview/llpanelface.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgenerictip.cpp b/indra/newview/llpanelgenerictip.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgenerictip.h b/indra/newview/llpanelgenerictip.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroup.cpp b/indra/newview/llpanelgroup.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroup.h b/indra/newview/llpanelgroup.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroupgeneral.cpp b/indra/newview/llpanelgroupgeneral.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroupgeneral.h b/indra/newview/llpanelgroupgeneral.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroupinvite.cpp b/indra/newview/llpanelgroupinvite.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroupinvite.h b/indra/newview/llpanelgroupinvite.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgrouplandmoney.cpp b/indra/newview/llpanelgrouplandmoney.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgrouplandmoney.h b/indra/newview/llpanelgrouplandmoney.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroupnotices.cpp b/indra/newview/llpanelgroupnotices.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgroupnotices.h b/indra/newview/llpanelgroupnotices.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgrouproles.cpp b/indra/newview/llpanelgrouproles.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelgrouproles.h b/indra/newview/llpanelgrouproles.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelhome.cpp b/indra/newview/llpanelhome.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelhome.h b/indra/newview/llpanelhome.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelimcontrolpanel.cpp b/indra/newview/llpanelimcontrolpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelimcontrolpanel.h b/indra/newview/llpanelimcontrolpanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelland.cpp b/indra/newview/llpanelland.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelland.h b/indra/newview/llpanelland.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandaudio.cpp b/indra/newview/llpanellandaudio.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandaudio.h b/indra/newview/llpanellandaudio.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandmarkinfo.cpp b/indra/newview/llpanellandmarkinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandmarkinfo.h b/indra/newview/llpanellandmarkinfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandmarks.h b/indra/newview/llpanellandmarks.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandmedia.cpp b/indra/newview/llpanellandmedia.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellandmedia.h b/indra/newview/llpanellandmedia.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellogin.cpp b/indra/newview/llpanellogin.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanellogin.h b/indra/newview/llpanellogin.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelloginlistener.cpp b/indra/newview/llpanelloginlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelloginlistener.h b/indra/newview/llpanelloginlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmaininventory.h b/indra/newview/llpanelmaininventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmarketplaceinbox.cpp b/indra/newview/llpanelmarketplaceinbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmarketplaceinbox.h b/indra/newview/llpanelmarketplaceinbox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmarketplaceinboxinventory.h b/indra/newview/llpanelmarketplaceinboxinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelme.cpp b/indra/newview/llpanelme.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelme.h b/indra/newview/llpanelme.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmediasettingsgeneral.cpp b/indra/newview/llpanelmediasettingsgeneral.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmediasettingsgeneral.h b/indra/newview/llpanelmediasettingsgeneral.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmediasettingspermissions.cpp b/indra/newview/llpanelmediasettingspermissions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmediasettingspermissions.h b/indra/newview/llpanelmediasettingspermissions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmediasettingssecurity.cpp b/indra/newview/llpanelmediasettingssecurity.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelmediasettingssecurity.h b/indra/newview/llpanelmediasettingssecurity.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelnearbymedia.cpp b/indra/newview/llpanelnearbymedia.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelnearbymedia.h b/indra/newview/llpanelnearbymedia.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelobject.h b/indra/newview/llpanelobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelobjectinventory.h b/indra/newview/llpanelobjectinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelonlinestatus.cpp b/indra/newview/llpanelonlinestatus.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelonlinestatus.h b/indra/newview/llpanelonlinestatus.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneloutfitedit.cpp b/indra/newview/llpaneloutfitedit.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneloutfitedit.h b/indra/newview/llpaneloutfitedit.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneloutfitsinventory.cpp b/indra/newview/llpaneloutfitsinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneloutfitsinventory.h b/indra/newview/llpaneloutfitsinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpeople.cpp b/indra/newview/llpanelpeople.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpeople.h b/indra/newview/llpanelpeople.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpeoplemenus.cpp b/indra/newview/llpanelpeoplemenus.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpeoplemenus.h b/indra/newview/llpanelpeoplemenus.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpermissions.cpp b/indra/newview/llpanelpermissions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpermissions.h b/indra/newview/llpanelpermissions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpick.cpp b/indra/newview/llpanelpick.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelpick.h b/indra/newview/llpanelpick.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplaceinfo.cpp b/indra/newview/llpanelplaceinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplaceinfo.h b/indra/newview/llpanelplaceinfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplaceprofile.cpp b/indra/newview/llpanelplaceprofile.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplaceprofile.h b/indra/newview/llpanelplaceprofile.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplaces.cpp b/indra/newview/llpanelplaces.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplaces.h b/indra/newview/llpanelplaces.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplacestab.cpp b/indra/newview/llpanelplacestab.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelplacestab.h b/indra/newview/llpanelplacestab.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelprimmediacontrols.h b/indra/newview/llpanelprimmediacontrols.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshot.cpp b/indra/newview/llpanelsnapshot.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshot.h b/indra/newview/llpanelsnapshot.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshotinventory.cpp b/indra/newview/llpanelsnapshotinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshotlocal.cpp b/indra/newview/llpanelsnapshotlocal.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshotoptions.cpp b/indra/newview/llpanelsnapshotoptions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshotpostcard.cpp b/indra/newview/llpanelsnapshotpostcard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelsnapshotprofile.cpp b/indra/newview/llpanelsnapshotprofile.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelteleporthistory.cpp b/indra/newview/llpanelteleporthistory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelteleporthistory.h b/indra/newview/llpanelteleporthistory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneltiptoast.cpp b/indra/newview/llpaneltiptoast.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneltiptoast.h b/indra/newview/llpaneltiptoast.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneltopinfobar.cpp b/indra/newview/llpaneltopinfobar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpaneltopinfobar.h b/indra/newview/llpaneltopinfobar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvoicedevicesettings.cpp b/indra/newview/llpanelvoicedevicesettings.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvoicedevicesettings.h b/indra/newview/llpanelvoicedevicesettings.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvoiceeffect.cpp b/indra/newview/llpanelvoiceeffect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvoiceeffect.h b/indra/newview/llpanelvoiceeffect.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvolume.cpp b/indra/newview/llpanelvolume.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvolume.h b/indra/newview/llpanelvolume.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvolumepulldown.cpp b/indra/newview/llpanelvolumepulldown.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelvolumepulldown.h b/indra/newview/llpanelvolumepulldown.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelwearing.cpp b/indra/newview/llpanelwearing.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpanelwearing.h b/indra/newview/llpanelwearing.h old mode 100644 new mode 100755 diff --git a/indra/newview/llparcelselection.cpp b/indra/newview/llparcelselection.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llparcelselection.h b/indra/newview/llparcelselection.h old mode 100644 new mode 100755 diff --git a/indra/newview/llparticipantlist.cpp b/indra/newview/llparticipantlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llparticipantlist.h b/indra/newview/llparticipantlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpatchvertexarray.cpp b/indra/newview/llpatchvertexarray.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpatchvertexarray.h b/indra/newview/llpatchvertexarray.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingcharacter.cpp b/indra/newview/llpathfindingcharacter.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingcharacter.h b/indra/newview/llpathfindingcharacter.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingcharacterlist.cpp b/indra/newview/llpathfindingcharacterlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingcharacterlist.h b/indra/newview/llpathfindingcharacterlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindinglinkset.cpp b/indra/newview/llpathfindinglinkset.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindinglinkset.h b/indra/newview/llpathfindinglinkset.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindinglinksetlist.cpp b/indra/newview/llpathfindinglinksetlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindinglinksetlist.h b/indra/newview/llpathfindinglinksetlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingmanager.cpp b/indra/newview/llpathfindingmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingnavmesh.cpp b/indra/newview/llpathfindingnavmesh.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingnavmesh.h b/indra/newview/llpathfindingnavmesh.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingnavmeshstatus.cpp b/indra/newview/llpathfindingnavmeshstatus.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingnavmeshstatus.h b/indra/newview/llpathfindingnavmeshstatus.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingnavmeshzone.cpp b/indra/newview/llpathfindingnavmeshzone.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingnavmeshzone.h b/indra/newview/llpathfindingnavmeshzone.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingobject.cpp b/indra/newview/llpathfindingobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingobject.h b/indra/newview/llpathfindingobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingobjectlist.cpp b/indra/newview/llpathfindingobjectlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingobjectlist.h b/indra/newview/llpathfindingobjectlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingpathtool.cpp b/indra/newview/llpathfindingpathtool.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpathfindingpathtool.h b/indra/newview/llpathfindingpathtool.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpersistentnotificationstorage.cpp b/indra/newview/llpersistentnotificationstorage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpersistentnotificationstorage.h b/indra/newview/llpersistentnotificationstorage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llphysicsmotion.cpp b/indra/newview/llphysicsmotion.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llphysicsmotion.h b/indra/newview/llphysicsmotion.h old mode 100644 new mode 100755 diff --git a/indra/newview/llphysicsshapebuilderutil.cpp b/indra/newview/llphysicsshapebuilderutil.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llphysicsshapebuilderutil.h b/indra/newview/llphysicsshapebuilderutil.h old mode 100644 new mode 100755 diff --git a/indra/newview/llplacesfolderview.cpp b/indra/newview/llplacesfolderview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llplacesfolderview.h b/indra/newview/llplacesfolderview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llplacesinventorybridge.cpp b/indra/newview/llplacesinventorybridge.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llplacesinventorybridge.h b/indra/newview/llplacesinventorybridge.h old mode 100644 new mode 100755 diff --git a/indra/newview/llplacesinventorypanel.cpp b/indra/newview/llplacesinventorypanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llplacesinventorypanel.h b/indra/newview/llplacesinventorypanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpolymesh.cpp b/indra/newview/llpolymesh.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpolymesh.h b/indra/newview/llpolymesh.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpolymorph.cpp b/indra/newview/llpolymorph.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpolymorph.h b/indra/newview/llpolymorph.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpopupview.cpp b/indra/newview/llpopupview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpopupview.h b/indra/newview/llpopupview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpostcard.cpp b/indra/newview/llpostcard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpostcard.h b/indra/newview/llpostcard.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreview.cpp b/indra/newview/llpreview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreview.h b/indra/newview/llpreview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewanim.cpp b/indra/newview/llpreviewanim.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewanim.h b/indra/newview/llpreviewanim.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewgesture.cpp b/indra/newview/llpreviewgesture.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewgesture.h b/indra/newview/llpreviewgesture.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewnotecard.cpp b/indra/newview/llpreviewnotecard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewnotecard.h b/indra/newview/llpreviewnotecard.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewscript.cpp b/indra/newview/llpreviewscript.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewscript.h b/indra/newview/llpreviewscript.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewsound.cpp b/indra/newview/llpreviewsound.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewsound.h b/indra/newview/llpreviewsound.h old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewtexture.cpp b/indra/newview/llpreviewtexture.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llpreviewtexture.h b/indra/newview/llpreviewtexture.h old mode 100644 new mode 100755 diff --git a/indra/newview/llproductinforequest.cpp b/indra/newview/llproductinforequest.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llproductinforequest.h b/indra/newview/llproductinforequest.h old mode 100644 new mode 100755 diff --git a/indra/newview/llprogressview.cpp b/indra/newview/llprogressview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llprogressview.h b/indra/newview/llprogressview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llrecentpeople.cpp b/indra/newview/llrecentpeople.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llrecentpeople.h b/indra/newview/llrecentpeople.h old mode 100644 new mode 100755 diff --git a/indra/newview/llregioninfomodel.cpp b/indra/newview/llregioninfomodel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llregioninfomodel.h b/indra/newview/llregioninfomodel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llregionposition.cpp b/indra/newview/llregionposition.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llregionposition.h b/indra/newview/llregionposition.h old mode 100644 new mode 100755 diff --git a/indra/newview/llremoteparcelrequest.cpp b/indra/newview/llremoteparcelrequest.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llremoteparcelrequest.h b/indra/newview/llremoteparcelrequest.h old mode 100644 new mode 100755 diff --git a/indra/newview/llresourcedata.h b/indra/newview/llresourcedata.h old mode 100644 new mode 100755 diff --git a/indra/newview/llrootview.h b/indra/newview/llrootview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsavedsettingsglue.cpp b/indra/newview/llsavedsettingsglue.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsavedsettingsglue.h b/indra/newview/llsavedsettingsglue.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsaveoutfitcombobtn.cpp b/indra/newview/llsaveoutfitcombobtn.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsaveoutfitcombobtn.h b/indra/newview/llsaveoutfitcombobtn.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsceneview.cpp b/indra/newview/llsceneview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsceneview.h b/indra/newview/llsceneview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llscreenchannel.cpp b/indra/newview/llscreenchannel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llscreenchannel.h b/indra/newview/llscreenchannel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llscriptfloater.cpp b/indra/newview/llscriptfloater.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llscriptfloater.h b/indra/newview/llscriptfloater.h old mode 100644 new mode 100755 diff --git a/indra/newview/llscrollingpanelparam.cpp b/indra/newview/llscrollingpanelparam.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llscrollingpanelparam.h b/indra/newview/llscrollingpanelparam.h old mode 100644 new mode 100755 diff --git a/indra/newview/llscrollingpanelparambase.cpp b/indra/newview/llscrollingpanelparambase.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llscrollingpanelparambase.h b/indra/newview/llscrollingpanelparambase.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsearchcombobox.cpp b/indra/newview/llsearchcombobox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsearchcombobox.h b/indra/newview/llsearchcombobox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsearchhistory.cpp b/indra/newview/llsearchhistory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsearchhistory.h b/indra/newview/llsearchhistory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsecapi.cpp b/indra/newview/llsecapi.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsecapi.h b/indra/newview/llsecapi.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsechandler_basic.cpp b/indra/newview/llsechandler_basic.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsechandler_basic.h b/indra/newview/llsechandler_basic.h old mode 100644 new mode 100755 diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llselectmgr.h b/indra/newview/llselectmgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llshareavatarhandler.cpp b/indra/newview/llshareavatarhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepanelappearance.h b/indra/newview/llsidepanelappearance.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepanelinventory.h b/indra/newview/llsidepanelinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepanelinventorysubpanel.cpp b/indra/newview/llsidepanelinventorysubpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepanelinventorysubpanel.h b/indra/newview/llsidepanelinventorysubpanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepaneliteminfo.cpp b/indra/newview/llsidepaneliteminfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepaneliteminfo.h b/indra/newview/llsidepaneliteminfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepaneltaskinfo.cpp b/indra/newview/llsidepaneltaskinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidepaneltaskinfo.h b/indra/newview/llsidepaneltaskinfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsidetraypanelcontainer.cpp b/indra/newview/llsidetraypanelcontainer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsidetraypanelcontainer.h b/indra/newview/llsidetraypanelcontainer.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsimplestat.h b/indra/newview/llsimplestat.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsky.cpp b/indra/newview/llsky.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsky.h b/indra/newview/llsky.h old mode 100644 new mode 100755 diff --git a/indra/newview/llslurl.cpp b/indra/newview/llslurl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llslurl.h b/indra/newview/llslurl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llspatialpartition.cpp b/indra/newview/llspatialpartition.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llspatialpartition.h b/indra/newview/llspatialpartition.h old mode 100644 new mode 100755 diff --git a/indra/newview/llspeakers.cpp b/indra/newview/llspeakers.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llspeakers.h b/indra/newview/llspeakers.h old mode 100644 new mode 100755 diff --git a/indra/newview/llspeakingindicatormanager.cpp b/indra/newview/llspeakingindicatormanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llspeakingindicatormanager.h b/indra/newview/llspeakingindicatormanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsplitbutton.cpp b/indra/newview/llsplitbutton.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsplitbutton.h b/indra/newview/llsplitbutton.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsprite.cpp b/indra/newview/llsprite.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsprite.h b/indra/newview/llsprite.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsrv.cpp b/indra/newview/llsrv.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsrv.h b/indra/newview/llsrv.h old mode 100644 new mode 100755 diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llstartup.h b/indra/newview/llstartup.h old mode 100644 new mode 100755 diff --git a/indra/newview/llstartuplistener.cpp b/indra/newview/llstartuplistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llstartuplistener.h b/indra/newview/llstartuplistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llstatusbar.h b/indra/newview/llstatusbar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llstylemap.cpp b/indra/newview/llstylemap.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llstylemap.h b/indra/newview/llstylemap.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsurface.cpp b/indra/newview/llsurface.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsurface.h b/indra/newview/llsurface.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsurfacepatch.cpp b/indra/newview/llsurfacepatch.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsurfacepatch.h b/indra/newview/llsurfacepatch.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsyswellitem.cpp b/indra/newview/llsyswellitem.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsyswellitem.h b/indra/newview/llsyswellitem.h old mode 100644 new mode 100755 diff --git a/indra/newview/llsyswellwindow.cpp b/indra/newview/llsyswellwindow.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llsyswellwindow.h b/indra/newview/llsyswellwindow.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltable.h b/indra/newview/lltable.h old mode 100644 new mode 100755 diff --git a/indra/newview/llteleporthistory.cpp b/indra/newview/llteleporthistory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llteleporthistory.h b/indra/newview/llteleporthistory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llteleporthistorystorage.cpp b/indra/newview/llteleporthistorystorage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llteleporthistorystorage.h b/indra/newview/llteleporthistorystorage.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexglobalcolor.cpp b/indra/newview/lltexglobalcolor.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexglobalcolor.h b/indra/newview/lltexglobalcolor.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexlayer.cpp b/indra/newview/lltexlayer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexlayer.h b/indra/newview/lltexlayer.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexlayerparams.cpp b/indra/newview/lltexlayerparams.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexlayerparams.h b/indra/newview/lltexlayerparams.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureatlas.cpp b/indra/newview/lltextureatlas.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureatlas.h b/indra/newview/lltextureatlas.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureatlasmanager.cpp b/indra/newview/lltextureatlasmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureatlasmanager.h b/indra/newview/lltextureatlasmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturecache.cpp b/indra/newview/lltexturecache.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturecache.h b/indra/newview/lltexturecache.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturectrl.h b/indra/newview/lltexturectrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturefetch.h b/indra/newview/lltexturefetch.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureinfo.cpp b/indra/newview/lltextureinfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureinfo.h b/indra/newview/lltextureinfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureinfodetails.cpp b/indra/newview/lltextureinfodetails.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureinfodetails.h b/indra/newview/lltextureinfodetails.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturestats.cpp b/indra/newview/lltexturestats.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturestats.h b/indra/newview/lltexturestats.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturestatsuploader.cpp b/indra/newview/lltexturestatsuploader.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltexturestatsuploader.h b/indra/newview/lltexturestatsuploader.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureview.cpp b/indra/newview/lltextureview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltextureview.h b/indra/newview/lltextureview.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoast.cpp b/indra/newview/lltoast.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoast.h b/indra/newview/lltoast.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastalertpanel.cpp b/indra/newview/lltoastalertpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastalertpanel.h b/indra/newview/lltoastalertpanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastgroupnotifypanel.cpp b/indra/newview/lltoastgroupnotifypanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastgroupnotifypanel.h b/indra/newview/lltoastgroupnotifypanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastimpanel.cpp b/indra/newview/lltoastimpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastimpanel.h b/indra/newview/lltoastimpanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastnotifypanel.cpp b/indra/newview/lltoastnotifypanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastnotifypanel.h b/indra/newview/lltoastnotifypanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastpanel.cpp b/indra/newview/lltoastpanel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastpanel.h b/indra/newview/lltoastpanel.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastscriptquestion.cpp b/indra/newview/lltoastscriptquestion.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastscriptquestion.h b/indra/newview/lltoastscriptquestion.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastscripttextbox.cpp b/indra/newview/lltoastscripttextbox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoastscripttextbox.h b/indra/newview/lltoastscripttextbox.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltool.cpp b/indra/newview/lltool.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltool.h b/indra/newview/lltool.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolbarview.cpp b/indra/newview/lltoolbarview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolbarview.h b/indra/newview/lltoolbarview.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolbrush.cpp b/indra/newview/lltoolbrush.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolbrush.h b/indra/newview/lltoolbrush.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolcomp.cpp b/indra/newview/lltoolcomp.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolcomp.h b/indra/newview/lltoolcomp.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltooldraganddrop.cpp b/indra/newview/lltooldraganddrop.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltooldraganddrop.h b/indra/newview/lltooldraganddrop.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolface.cpp b/indra/newview/lltoolface.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolface.h b/indra/newview/lltoolface.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolfocus.cpp b/indra/newview/lltoolfocus.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolfocus.h b/indra/newview/lltoolfocus.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolgrab.cpp b/indra/newview/lltoolgrab.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolgrab.h b/indra/newview/lltoolgrab.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolgun.cpp b/indra/newview/lltoolgun.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolgun.h b/indra/newview/lltoolgun.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolindividual.cpp b/indra/newview/lltoolindividual.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolindividual.h b/indra/newview/lltoolindividual.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolmgr.cpp b/indra/newview/lltoolmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolmgr.h b/indra/newview/lltoolmgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolmorph.cpp b/indra/newview/lltoolmorph.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolmorph.h b/indra/newview/lltoolmorph.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolobjpicker.cpp b/indra/newview/lltoolobjpicker.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolobjpicker.h b/indra/newview/lltoolobjpicker.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolpie.h b/indra/newview/lltoolpie.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolpipette.cpp b/indra/newview/lltoolpipette.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolpipette.h b/indra/newview/lltoolpipette.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolplacer.cpp b/indra/newview/lltoolplacer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolplacer.h b/indra/newview/lltoolplacer.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolselect.cpp b/indra/newview/lltoolselect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolselect.h b/indra/newview/lltoolselect.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolselectland.cpp b/indra/newview/lltoolselectland.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolselectland.h b/indra/newview/lltoolselectland.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolselectrect.cpp b/indra/newview/lltoolselectrect.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolselectrect.h b/indra/newview/lltoolselectrect.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolview.cpp b/indra/newview/lltoolview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltoolview.h b/indra/newview/lltoolview.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltracker.cpp b/indra/newview/lltracker.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltracker.h b/indra/newview/lltracker.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltransientdockablefloater.cpp b/indra/newview/lltransientdockablefloater.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltransientdockablefloater.h b/indra/newview/lltransientdockablefloater.h old mode 100644 new mode 100755 diff --git a/indra/newview/lltransientfloatermgr.cpp b/indra/newview/lltransientfloatermgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lltransientfloatermgr.h b/indra/newview/lltransientfloatermgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/lluiconstants.h b/indra/newview/lluiconstants.h old mode 100644 new mode 100755 diff --git a/indra/newview/lluilistener.cpp b/indra/newview/lluilistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lluilistener.h b/indra/newview/lluilistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/lluploaddialog.cpp b/indra/newview/lluploaddialog.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lluploaddialog.h b/indra/newview/lluploaddialog.h old mode 100644 new mode 100755 diff --git a/indra/newview/lluploadfloaterobservers.cpp b/indra/newview/lluploadfloaterobservers.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/lluploadfloaterobservers.h b/indra/newview/lluploadfloaterobservers.h old mode 100644 new mode 100755 diff --git a/indra/newview/llurl.cpp b/indra/newview/llurl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llurl.h b/indra/newview/llurl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llurldispatcher.cpp b/indra/newview/llurldispatcher.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llurldispatcher.h b/indra/newview/llurldispatcher.h old mode 100644 new mode 100755 diff --git a/indra/newview/llurldispatcherlistener.cpp b/indra/newview/llurldispatcherlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llurldispatcherlistener.h b/indra/newview/llurldispatcherlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llurlhistory.cpp b/indra/newview/llurlhistory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llurlhistory.h b/indra/newview/llurlhistory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llurllineeditorctrl.cpp b/indra/newview/llurllineeditorctrl.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llurllineeditorctrl.h b/indra/newview/llurllineeditorctrl.h old mode 100644 new mode 100755 diff --git a/indra/newview/llurlwhitelist.cpp b/indra/newview/llurlwhitelist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llurlwhitelist.h b/indra/newview/llurlwhitelist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvectorperfoptions.cpp b/indra/newview/llvectorperfoptions.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvectorperfoptions.h b/indra/newview/llvectorperfoptions.h old mode 100644 new mode 100755 diff --git a/indra/newview/llversioninfo.cpp b/indra/newview/llversioninfo.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llversioninfo.h b/indra/newview/llversioninfo.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewchildren.cpp b/indra/newview/llviewchildren.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewchildren.h b/indra/newview/llviewchildren.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerassetstats.cpp b/indra/newview/llviewerassetstats.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerassetstats.h b/indra/newview/llviewerassetstats.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerassetstorage.cpp b/indra/newview/llviewerassetstorage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerassetstorage.h b/indra/newview/llviewerassetstorage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerassettype.cpp b/indra/newview/llviewerassettype.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerassettype.h b/indra/newview/llviewerassettype.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerattachmenu.cpp b/indra/newview/llviewerattachmenu.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerattachmenu.h b/indra/newview/llviewerattachmenu.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvieweraudio.cpp b/indra/newview/llvieweraudio.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvieweraudio.h b/indra/newview/llvieweraudio.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewercamera.cpp b/indra/newview/llviewercamera.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewercamera.h b/indra/newview/llviewercamera.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerchat.cpp b/indra/newview/llviewerchat.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerchat.h b/indra/newview/llviewerchat.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewercontrol.cpp b/indra/newview/llviewercontrol.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewercontrol.h b/indra/newview/llviewercontrol.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewercontrollistener.cpp b/indra/newview/llviewercontrollistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewercontrollistener.h b/indra/newview/llviewercontrollistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerdisplay.h b/indra/newview/llviewerdisplay.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerdisplayname.cpp b/indra/newview/llviewerdisplayname.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerdisplayname.h b/indra/newview/llviewerdisplayname.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerfloaterreg.h b/indra/newview/llviewerfloaterreg.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerfoldertype.h b/indra/newview/llviewerfoldertype.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewergenericmessage.cpp b/indra/newview/llviewergenericmessage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewergenericmessage.h b/indra/newview/llviewergenericmessage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewergesture.cpp b/indra/newview/llviewergesture.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewergesture.h b/indra/newview/llviewergesture.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerhelp.cpp b/indra/newview/llviewerhelp.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerhelp.h b/indra/newview/llviewerhelp.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerhelputil.cpp b/indra/newview/llviewerhelputil.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerhelputil.h b/indra/newview/llviewerhelputil.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerhome.cpp b/indra/newview/llviewerhome.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerhome.h b/indra/newview/llviewerhome.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerinventory.h b/indra/newview/llviewerinventory.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjoint.cpp b/indra/newview/llviewerjoint.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjoint.h b/indra/newview/llviewerjoint.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjointattachment.cpp b/indra/newview/llviewerjointattachment.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjointattachment.h b/indra/newview/llviewerjointattachment.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjointmesh.cpp b/indra/newview/llviewerjointmesh.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjointmesh.h b/indra/newview/llviewerjointmesh.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjoystick.cpp b/indra/newview/llviewerjoystick.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerjoystick.h b/indra/newview/llviewerjoystick.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerkeyboard.cpp b/indra/newview/llviewerkeyboard.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerkeyboard.h b/indra/newview/llviewerkeyboard.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerlayer.cpp b/indra/newview/llviewerlayer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerlayer.h b/indra/newview/llviewerlayer.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermedia_streamingaudio.cpp b/indra/newview/llviewermedia_streamingaudio.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermedia_streamingaudio.h b/indra/newview/llviewermedia_streamingaudio.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermediafocus.cpp b/indra/newview/llviewermediafocus.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermediafocus.h b/indra/newview/llviewermediafocus.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermediaobserver.h b/indra/newview/llviewermediaobserver.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermenu.h b/indra/newview/llviewermenu.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermenufile.h b/indra/newview/llviewermenufile.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewermessage.h b/indra/newview/llviewermessage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewernetwork.cpp b/indra/newview/llviewernetwork.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewernetwork.h b/indra/newview/llviewernetwork.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerobject.h b/indra/newview/llviewerobject.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerobjectlist.cpp b/indra/newview/llviewerobjectlist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerobjectlist.h b/indra/newview/llviewerobjectlist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparcelmedia.cpp b/indra/newview/llviewerparcelmedia.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparcelmedia.h b/indra/newview/llviewerparcelmedia.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparcelmediaautoplay.cpp b/indra/newview/llviewerparcelmediaautoplay.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparcelmediaautoplay.h b/indra/newview/llviewerparcelmediaautoplay.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparcelmgr.h b/indra/newview/llviewerparcelmgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparceloverlay.cpp b/indra/newview/llviewerparceloverlay.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerparceloverlay.h b/indra/newview/llviewerparceloverlay.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerpartsim.cpp b/indra/newview/llviewerpartsim.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerpartsim.h b/indra/newview/llviewerpartsim.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerpartsource.cpp b/indra/newview/llviewerpartsource.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerpartsource.h b/indra/newview/llviewerpartsource.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerprecompiledheaders.cpp b/indra/newview/llviewerprecompiledheaders.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerprecompiledheaders.h b/indra/newview/llviewerprecompiledheaders.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerregion.h b/indra/newview/llviewerregion.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewershadermgr.h b/indra/newview/llviewershadermgr.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerstats.cpp b/indra/newview/llviewerstats.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerstats.h b/indra/newview/llviewerstats.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerstatsrecorder.cpp b/indra/newview/llviewerstatsrecorder.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerstatsrecorder.h b/indra/newview/llviewerstatsrecorder.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertexteditor.cpp b/indra/newview/llviewertexteditor.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertexteditor.h b/indra/newview/llviewertexteditor.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertextureanim.cpp b/indra/newview/llviewertextureanim.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertextureanim.h b/indra/newview/llviewertextureanim.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewertexturelist.h b/indra/newview/llviewertexturelist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerthrottle.cpp b/indra/newview/llviewerthrottle.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerthrottle.h b/indra/newview/llviewerthrottle.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewervisualparam.cpp b/indra/newview/llviewervisualparam.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewervisualparam.h b/indra/newview/llviewervisualparam.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerwindow.h b/indra/newview/llviewerwindow.h old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerwindowlistener.cpp b/indra/newview/llviewerwindowlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llviewerwindowlistener.h b/indra/newview/llviewerwindowlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvlcomposition.cpp b/indra/newview/llvlcomposition.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvlcomposition.h b/indra/newview/llvlcomposition.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvlmanager.cpp b/indra/newview/llvlmanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvlmanager.h b/indra/newview/llvlmanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoavatardefines.cpp b/indra/newview/llvoavatardefines.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoavatardefines.h b/indra/newview/llvoavatardefines.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoavatarself.h b/indra/newview/llvoavatarself.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvocache.cpp b/indra/newview/llvocache.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvocache.h b/indra/newview/llvocache.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvograss.cpp b/indra/newview/llvograss.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvograss.h b/indra/newview/llvograss.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoground.cpp b/indra/newview/llvoground.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoground.h b/indra/newview/llvoground.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicecallhandler.cpp b/indra/newview/llvoicecallhandler.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicechannel.cpp b/indra/newview/llvoicechannel.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicechannel.h b/indra/newview/llvoicechannel.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoiceclient.h b/indra/newview/llvoiceclient.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicevisualizer.cpp b/indra/newview/llvoicevisualizer.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicevisualizer.h b/indra/newview/llvoicevisualizer.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicevivox.cpp b/indra/newview/llvoicevivox.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoicevivox.h b/indra/newview/llvoicevivox.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvoinventorylistener.cpp b/indra/newview/llvoinventorylistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvoinventorylistener.h b/indra/newview/llvoinventorylistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvopartgroup.cpp b/indra/newview/llvopartgroup.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvopartgroup.h b/indra/newview/llvopartgroup.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvosky.cpp b/indra/newview/llvosky.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvosky.h b/indra/newview/llvosky.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvosurfacepatch.cpp b/indra/newview/llvosurfacepatch.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvosurfacepatch.h b/indra/newview/llvosurfacepatch.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvotree.cpp b/indra/newview/llvotree.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvotree.h b/indra/newview/llvotree.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvotreenew.h b/indra/newview/llvotreenew.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvovolume.h b/indra/newview/llvovolume.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvowater.cpp b/indra/newview/llvowater.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvowater.h b/indra/newview/llvowater.h old mode 100644 new mode 100755 diff --git a/indra/newview/llvowlsky.cpp b/indra/newview/llvowlsky.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llvowlsky.h b/indra/newview/llvowlsky.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwatchdog.cpp b/indra/newview/llwatchdog.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwatchdog.h b/indra/newview/llwatchdog.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwaterparammanager.cpp b/indra/newview/llwaterparammanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwaterparammanager.h b/indra/newview/llwaterparammanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwaterparamset.cpp b/indra/newview/llwaterparamset.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwaterparamset.h b/indra/newview/llwaterparamset.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwearable.cpp b/indra/newview/llwearable.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwearable.h b/indra/newview/llwearable.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwearableitemslist.cpp b/indra/newview/llwearableitemslist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwearableitemslist.h b/indra/newview/llwearableitemslist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwearablelist.cpp b/indra/newview/llwearablelist.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwearablelist.h b/indra/newview/llwearablelist.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwearabletype.cpp b/indra/newview/llwearabletype.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwearabletype.h b/indra/newview/llwearabletype.h old mode 100644 new mode 100755 diff --git a/indra/newview/llweb.cpp b/indra/newview/llweb.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llweb.h b/indra/newview/llweb.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwebprofile.cpp b/indra/newview/llwebprofile.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwebprofile.h b/indra/newview/llwebprofile.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwebsharing.cpp b/indra/newview/llwebsharing.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwebsharing.h b/indra/newview/llwebsharing.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwind.cpp b/indra/newview/llwind.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwind.h b/indra/newview/llwind.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwindebug.cpp b/indra/newview/llwindebug.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwindebug.h b/indra/newview/llwindebug.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwindowlistener.cpp b/indra/newview/llwindowlistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwindowlistener.h b/indra/newview/llwindowlistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwlanimator.cpp b/indra/newview/llwlanimator.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwlanimator.h b/indra/newview/llwlanimator.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwldaycycle.cpp b/indra/newview/llwldaycycle.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwldaycycle.h b/indra/newview/llwldaycycle.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwlhandlers.cpp b/indra/newview/llwlhandlers.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwlhandlers.h b/indra/newview/llwlhandlers.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwlparammanager.cpp b/indra/newview/llwlparammanager.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwlparammanager.h b/indra/newview/llwlparammanager.h old mode 100644 new mode 100755 diff --git a/indra/newview/llwlparamset.cpp b/indra/newview/llwlparamset.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llwlparamset.h b/indra/newview/llwlparamset.h old mode 100644 new mode 100755 diff --git a/indra/newview/llworld.cpp b/indra/newview/llworld.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llworld.h b/indra/newview/llworld.h old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmap.cpp b/indra/newview/llworldmap.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmap.h b/indra/newview/llworldmap.h old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmapmessage.cpp b/indra/newview/llworldmapmessage.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmapmessage.h b/indra/newview/llworldmapmessage.h old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmapview.cpp b/indra/newview/llworldmapview.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmapview.h b/indra/newview/llworldmapview.h old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmipmap.cpp b/indra/newview/llworldmipmap.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llworldmipmap.h b/indra/newview/llworldmipmap.h old mode 100644 new mode 100755 diff --git a/indra/newview/llxmlrpclistener.cpp b/indra/newview/llxmlrpclistener.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llxmlrpclistener.h b/indra/newview/llxmlrpclistener.h old mode 100644 new mode 100755 diff --git a/indra/newview/llxmlrpctransaction.cpp b/indra/newview/llxmlrpctransaction.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/llxmlrpctransaction.h b/indra/newview/llxmlrpctransaction.h old mode 100644 new mode 100755 diff --git a/indra/newview/macmain.h b/indra/newview/macmain.h old mode 100644 new mode 100755 diff --git a/indra/newview/macutil_Prefix.h b/indra/newview/macutil_Prefix.h old mode 100644 new mode 100755 diff --git a/indra/newview/macview.r b/indra/newview/macview.r old mode 100644 new mode 100755 diff --git a/indra/newview/macview_Prefix.h b/indra/newview/macview_Prefix.h old mode 100644 new mode 100755 diff --git a/indra/newview/nl.lproj/language.txt b/indra/newview/nl.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/noise.cpp b/indra/newview/noise.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/noise.h b/indra/newview/noise.h old mode 100644 new mode 100755 diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/pipeline.h b/indra/newview/pipeline.h old mode 100644 new mode 100755 diff --git a/indra/newview/pl.lproj/language.txt b/indra/newview/pl.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/pt.lproj/language.txt b/indra/newview/pt.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/arrow.BMP b/indra/newview/res-sdl/arrow.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/arrowcop.BMP b/indra/newview/res-sdl/arrowcop.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/arrowcopmulti.BMP b/indra/newview/res-sdl/arrowcopmulti.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/arrowdrag.BMP b/indra/newview/res-sdl/arrowdrag.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/circleandline.BMP b/indra/newview/res-sdl/circleandline.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/cross.BMP b/indra/newview/res-sdl/cross.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/hand.BMP b/indra/newview/res-sdl/hand.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/ibeam.BMP b/indra/newview/res-sdl/ibeam.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llarrow.BMP b/indra/newview/res-sdl/llarrow.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llarrowdrag.BMP b/indra/newview/res-sdl/llarrowdrag.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llarrowdragmulti.BMP b/indra/newview/res-sdl/llarrowdragmulti.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llarrowlocked.BMP b/indra/newview/res-sdl/llarrowlocked.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llgrablocked.BMP b/indra/newview/res-sdl/llgrablocked.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llno.BMP b/indra/newview/res-sdl/llno.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/llnolocked.BMP b/indra/newview/res-sdl/llnolocked.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolcamera.BMP b/indra/newview/res-sdl/lltoolcamera.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolcreate.BMP b/indra/newview/res-sdl/lltoolcreate.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolfocus.BMP b/indra/newview/res-sdl/lltoolfocus.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolgrab.BMP b/indra/newview/res-sdl/lltoolgrab.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolland.BMP b/indra/newview/res-sdl/lltoolland.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpan.BMP b/indra/newview/res-sdl/lltoolpan.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpathfinding.BMP b/indra/newview/res-sdl/lltoolpathfinding.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpathfindingpathend.BMP b/indra/newview/res-sdl/lltoolpathfindingpathend.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpathfindingpathendadd.BMP b/indra/newview/res-sdl/lltoolpathfindingpathendadd.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpathfindingpathstart.BMP b/indra/newview/res-sdl/lltoolpathfindingpathstart.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpathfindingpathstartadd.BMP b/indra/newview/res-sdl/lltoolpathfindingpathstartadd.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolpipette.BMP b/indra/newview/res-sdl/lltoolpipette.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolrotate.BMP b/indra/newview/res-sdl/lltoolrotate.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolscale.BMP b/indra/newview/res-sdl/lltoolscale.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltooltranslate.BMP b/indra/newview/res-sdl/lltooltranslate.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolzoomin.BMP b/indra/newview/res-sdl/lltoolzoomin.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/lltoolzoomout.BMP b/indra/newview/res-sdl/lltoolzoomout.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/sizenesw.BMP b/indra/newview/res-sdl/sizenesw.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/sizens.BMP b/indra/newview/res-sdl/sizens.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/sizenwse.BMP b/indra/newview/res-sdl/sizenwse.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/sizewe.BMP b/indra/newview/res-sdl/sizewe.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolbuy.BMP b/indra/newview/res-sdl/toolbuy.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolmediaopen.BMP b/indra/newview/res-sdl/toolmediaopen.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolopen.BMP b/indra/newview/res-sdl/toolopen.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolpause.BMP b/indra/newview/res-sdl/toolpause.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolpickobject.BMP b/indra/newview/res-sdl/toolpickobject.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolpickobject2.BMP b/indra/newview/res-sdl/toolpickobject2.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolpickobject3.BMP b/indra/newview/res-sdl/toolpickobject3.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolplay.BMP b/indra/newview/res-sdl/toolplay.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/toolsit.BMP b/indra/newview/res-sdl/toolsit.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/wait.BMP b/indra/newview/res-sdl/wait.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res-sdl/working.BMP b/indra/newview/res-sdl/working.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res/arrow.cur b/indra/newview/res/arrow.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/arrowcop.cur b/indra/newview/res/arrowcop.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/arrowcopmulti.cur b/indra/newview/res/arrowcopmulti.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/arrowdrag.cur b/indra/newview/res/arrowdrag.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/bitmap2.bmp b/indra/newview/res/bitmap2.bmp old mode 100644 new mode 100755 diff --git a/indra/newview/res/circleandline.cur b/indra/newview/res/circleandline.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/have_artwork_bundle.marker b/indra/newview/res/have_artwork_bundle.marker old mode 100644 new mode 100755 diff --git a/indra/newview/res/icon1.ico b/indra/newview/res/icon1.ico old mode 100644 new mode 100755 diff --git a/indra/newview/res/install_icon.BMP b/indra/newview/res/install_icon.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res/llarrow.cur b/indra/newview/res/llarrow.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/llarrowdrag.cur b/indra/newview/res/llarrowdrag.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/llarrowdragmulti.cur b/indra/newview/res/llarrowdragmulti.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/llarrowlocked.cur b/indra/newview/res/llarrowlocked.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/llgrablocked.cur b/indra/newview/res/llgrablocked.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/llno.cur b/indra/newview/res/llno.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/llnolocked.cur b/indra/newview/res/llnolocked.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolcamera.cur b/indra/newview/res/lltoolcamera.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolcreate.cur b/indra/newview/res/lltoolcreate.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolfocus.cur b/indra/newview/res/lltoolfocus.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolgrab.cur b/indra/newview/res/lltoolgrab.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolland.cur b/indra/newview/res/lltoolland.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpan.cur b/indra/newview/res/lltoolpan.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpathfinding.cur b/indra/newview/res/lltoolpathfinding.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpathfindingpathend.cur b/indra/newview/res/lltoolpathfindingpathend.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpathfindingpathendadd.cur b/indra/newview/res/lltoolpathfindingpathendadd.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpathfindingpathstart.cur b/indra/newview/res/lltoolpathfindingpathstart.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpathfindingpathstartadd.cur b/indra/newview/res/lltoolpathfindingpathstartadd.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolpipette.cur b/indra/newview/res/lltoolpipette.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolrotate.cur b/indra/newview/res/lltoolrotate.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolscale.cur b/indra/newview/res/lltoolscale.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltooltranslate.cur b/indra/newview/res/lltooltranslate.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolzoomin.cur b/indra/newview/res/lltoolzoomin.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/lltoolzoomout.cur b/indra/newview/res/lltoolzoomout.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/loginbackground.bmp b/indra/newview/res/loginbackground.bmp old mode 100644 new mode 100755 diff --git a/indra/newview/res/resource.h b/indra/newview/res/resource.h old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolbuy.cur b/indra/newview/res/toolbuy.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolmediaopen.cur b/indra/newview/res/toolmediaopen.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolopen.cur b/indra/newview/res/toolopen.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolpause.cur b/indra/newview/res/toolpause.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolpickobject.cur b/indra/newview/res/toolpickobject.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolpickobject2.cur b/indra/newview/res/toolpickobject2.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolpickobject3.cur b/indra/newview/res/toolpickobject3.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolpipette.cur b/indra/newview/res/toolpipette.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolplay.cur b/indra/newview/res/toolplay.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/toolsit.cur b/indra/newview/res/toolsit.cur old mode 100644 new mode 100755 diff --git a/indra/newview/res/uninstall_icon.BMP b/indra/newview/res/uninstall_icon.BMP old mode 100644 new mode 100755 diff --git a/indra/newview/res/viewerRes.rc b/indra/newview/res/viewerRes.rc old mode 100644 new mode 100755 diff --git a/indra/newview/ru.lproj/language.txt b/indra/newview/ru.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/secondlife-i686.supp b/indra/newview/secondlife-i686.supp old mode 100644 new mode 100755 diff --git a/indra/newview/secondlife.icns b/indra/newview/secondlife.icns old mode 100644 new mode 100755 diff --git a/indra/newview/secondlife_firstlook.icns b/indra/newview/secondlife_firstlook.icns old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/btn_purplepill_bg.png b/indra/newview/skins/default/html/btn_purplepill_bg.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/da/loading/loading.html b/indra/newview/skins/default/html/da/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/de/loading-error/index.html b/indra/newview/skins/default/html/de/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/de/loading/loading.html b/indra/newview/skins/default/html/de/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/en-us/help-offline/index.html b/indra/newview/skins/default/html/en-us/help-offline/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/en-us/loading-error/index.html b/indra/newview/skins/default/html/en-us/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/en-us/loading/loading.html b/indra/newview/skins/default/html/en-us/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/en-us/loading/sl_logo_rotate_black.gif b/indra/newview/skins/default/html/en-us/loading/sl_logo_rotate_black.gif old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/es/loading-error/index.html b/indra/newview/skins/default/html/es/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/es/loading/loading.html b/indra/newview/skins/default/html/es/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/fr/loading-error/index.html b/indra/newview/skins/default/html/fr/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/fr/loading/loading.html b/indra/newview/skins/default/html/fr/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/hu/loading/loading.html b/indra/newview/skins/default/html/hu/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/it/loading/loading.html b/indra/newview/skins/default/html/it/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/ja/loading-error/index.html b/indra/newview/skins/default/html/ja/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/ja/loading/loading.html b/indra/newview/skins/default/html/ja/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/ko/loading-error/index.html b/indra/newview/skins/default/html/ko/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/nl/loading/loading.html b/indra/newview/skins/default/html/nl/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/pl/loading/loading.html b/indra/newview/skins/default/html/pl/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/pt/loading-error/index.html b/indra/newview/skins/default/html/pt/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/pt/loading/loading.html b/indra/newview/skins/default/html/pt/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/ru/loading/loading.html b/indra/newview/skins/default/html/ru/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/tr/loading/loading.html b/indra/newview/skins/default/html/tr/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/uk/loading/loading.html b/indra/newview/skins/default/html/uk/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/unabletoconnect.png b/indra/newview/skins/default/html/unabletoconnect.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/zh/loading-error/index.html b/indra/newview/skins/default/html/zh/loading-error/index.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/html/zh/loading/loading.html b/indra/newview/skins/default/html/zh/loading/loading.html old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/Blank.png b/indra/newview/skins/default/textures/Blank.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/Rounded_Rect.png b/indra/newview/skins/default/textures/Rounded_Rect.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/alpha_gradient.tga b/indra/newview/skins/default/textures/alpha_gradient.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/alpha_gradient_2d.j2c b/indra/newview/skins/default/textures/alpha_gradient_2d.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/arrow_down.tga b/indra/newview/skins/default/textures/arrow_down.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/arrow_up.tga b/indra/newview/skins/default/textures/arrow_up.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/avatar_thumb_bkgrnd.png b/indra/newview/skins/default/textures/avatar_thumb_bkgrnd.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/badge_note.j2c b/indra/newview/skins/default/textures/badge_note.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/badge_ok.j2c b/indra/newview/skins/default/textures/badge_ok.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/badge_warn.j2c b/indra/newview/skins/default/textures/badge_warn.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Avatar_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Avatar_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_FreeCam_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_FreeCam_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Orbit_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Orbit_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Pan_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Pan_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Back_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Back_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Back_On.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Back_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Eye_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Eye_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Front_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Front_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Front_On.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Front_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Side_Off.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Side_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Side_On.png b/indra/newview/skins/default/textures/bottomtray/Cam_Preset_Side_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Rotate_In.png b/indra/newview/skins/default/textures/bottomtray/Cam_Rotate_In.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Rotate_Out.png b/indra/newview/skins/default/textures/bottomtray/Cam_Rotate_Out.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Tracking_In.png b/indra/newview/skins/default/textures/bottomtray/Cam_Tracking_In.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Cam_Tracking_Out.png b/indra/newview/skins/default/textures/bottomtray/Cam_Tracking_Out.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/ChatBarHandle.png b/indra/newview/skins/default/textures/bottomtray/ChatBarHandle.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/DownArrow.png b/indra/newview/skins/default/textures/bottomtray/DownArrow.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Mouselook_View_Off.png b/indra/newview/skins/default/textures/bottomtray/Mouselook_View_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Mouselook_View_On.png b/indra/newview/skins/default/textures/bottomtray/Mouselook_View_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Move_Fly_Off.png b/indra/newview/skins/default/textures/bottomtray/Move_Fly_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Move_Run_Off.png b/indra/newview/skins/default/textures/bottomtray/Move_Run_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Move_Walk_Off.png b/indra/newview/skins/default/textures/bottomtray/Move_Walk_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Backward_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_Backward_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Backward_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_Backward_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Down_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_Down_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Down_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_Down_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Forward_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_Forward_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Forward_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_Forward_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Left_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_Left_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Left_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_Left_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Right_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_Right_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Right_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_Right_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_TurnLeft_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_TurnLeft_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_TurnLeft_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_TurnLeft_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_TurnRight_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_TurnRight_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_TurnRight_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_TurnRight_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Up_Off.png b/indra/newview/skins/default/textures/bottomtray/Movement_Up_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Movement_Up_On.png b/indra/newview/skins/default/textures/bottomtray/Movement_Up_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Notices_Unread.png b/indra/newview/skins/default/textures/bottomtray/Notices_Unread.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Object_View_Off.png b/indra/newview/skins/default/textures/bottomtray/Object_View_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Object_View_On.png b/indra/newview/skins/default/textures/bottomtray/Object_View_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/PanOrbit_Off.png b/indra/newview/skins/default/textures/bottomtray/PanOrbit_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Snapshot_Off.png b/indra/newview/skins/default/textures/bottomtray/Snapshot_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/Unread_Chiclet.png b/indra/newview/skins/default/textures/bottomtray/Unread_Chiclet.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl1.png b/indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl1.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl2.png b/indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl2.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl3.png b/indra/newview/skins/default/textures/bottomtray/VoicePTT_Lvl3.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/VoicePTT_Off.png b/indra/newview/skins/default/textures/bottomtray/VoicePTT_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/VoicePTT_On.png b/indra/newview/skins/default/textures/bottomtray/VoicePTT_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/WellButton_Lit.png b/indra/newview/skins/default/textures/bottomtray/WellButton_Lit.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/bottomtray/WellButton_Lit_Selected.png b/indra/newview/skins/default/textures/bottomtray/WellButton_Lit_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Cone.png b/indra/newview/skins/default/textures/build/Object_Cone.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Cone_Selected.png b/indra/newview/skins/default/textures/build/Object_Cone_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Cube.png b/indra/newview/skins/default/textures/build/Object_Cube.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Cube_Selected.png b/indra/newview/skins/default/textures/build/Object_Cube_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Cylinder.png b/indra/newview/skins/default/textures/build/Object_Cylinder.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Cylinder_Selected.png b/indra/newview/skins/default/textures/build/Object_Cylinder_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Grass.png b/indra/newview/skins/default/textures/build/Object_Grass.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Grass_Selected.png b/indra/newview/skins/default/textures/build/Object_Grass_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Hemi_Cone.png b/indra/newview/skins/default/textures/build/Object_Hemi_Cone.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Hemi_Cone_Selected.png b/indra/newview/skins/default/textures/build/Object_Hemi_Cone_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Hemi_Cylinder.png b/indra/newview/skins/default/textures/build/Object_Hemi_Cylinder.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Hemi_Cylinder_Selected.png b/indra/newview/skins/default/textures/build/Object_Hemi_Cylinder_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Hemi_Sphere.png b/indra/newview/skins/default/textures/build/Object_Hemi_Sphere.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Hemi_Sphere_Selected.png b/indra/newview/skins/default/textures/build/Object_Hemi_Sphere_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Prism.png b/indra/newview/skins/default/textures/build/Object_Prism.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Prism_Selected.png b/indra/newview/skins/default/textures/build/Object_Prism_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Pyramid.png b/indra/newview/skins/default/textures/build/Object_Pyramid.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Pyramid_Selected.png b/indra/newview/skins/default/textures/build/Object_Pyramid_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Ring.png b/indra/newview/skins/default/textures/build/Object_Ring.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Ring_Selected.png b/indra/newview/skins/default/textures/build/Object_Ring_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Sphere.png b/indra/newview/skins/default/textures/build/Object_Sphere.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Sphere_Selected.png b/indra/newview/skins/default/textures/build/Object_Sphere_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Tetrahedron.png b/indra/newview/skins/default/textures/build/Object_Tetrahedron.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Tetrahedron_Selected.png b/indra/newview/skins/default/textures/build/Object_Tetrahedron_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Torus.png b/indra/newview/skins/default/textures/build/Object_Torus.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Torus_Selected.png b/indra/newview/skins/default/textures/build/Object_Torus_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Tree.png b/indra/newview/skins/default/textures/build/Object_Tree.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Tree_Selected.png b/indra/newview/skins/default/textures/build/Object_Tree_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Tube.png b/indra/newview/skins/default/textures/build/Object_Tube.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Object_Tube_Selected.png b/indra/newview/skins/default/textures/build/Object_Tube_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Tool_Create.png b/indra/newview/skins/default/textures/build/Tool_Create.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Tool_Dozer.png b/indra/newview/skins/default/textures/build/Tool_Dozer.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Tool_Face.png b/indra/newview/skins/default/textures/build/Tool_Face.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Tool_Grab.png b/indra/newview/skins/default/textures/build/Tool_Grab.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/build/Tool_Zoom.png b/indra/newview/skins/default/textures/build/Tool_Zoom.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/button_anim_pause.tga b/indra/newview/skins/default/textures/button_anim_pause.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/button_anim_pause_selected.tga b/indra/newview/skins/default/textures/button_anim_pause_selected.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/button_anim_play.tga b/indra/newview/skins/default/textures/button_anim_play.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/button_anim_play_selected.tga b/indra/newview/skins/default/textures/button_anim_play_selected.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/checker.png b/indra/newview/skins/default/textures/checker.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/cloud-particle.j2c b/indra/newview/skins/default/textures/cloud-particle.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/color_swatch_alpha.tga b/indra/newview/skins/default/textures/color_swatch_alpha.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_ArrowClosed_Off.png b/indra/newview/skins/default/textures/containers/Accordion_ArrowClosed_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_ArrowClosed_Press.png b/indra/newview/skins/default/textures/containers/Accordion_ArrowClosed_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_ArrowOpened_Off.png b/indra/newview/skins/default/textures/containers/Accordion_ArrowOpened_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_ArrowOpened_Press.png b/indra/newview/skins/default/textures/containers/Accordion_ArrowOpened_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_Off.png b/indra/newview/skins/default/textures/containers/Accordion_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_Over.png b/indra/newview/skins/default/textures/containers/Accordion_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_Press.png b/indra/newview/skins/default/textures/containers/Accordion_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Accordion_Selected.png b/indra/newview/skins/default/textures/containers/Accordion_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Container.png b/indra/newview/skins/default/textures/containers/Container.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/TabTop_Left_Off.png b/indra/newview/skins/default/textures/containers/TabTop_Left_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/TabTop_Left_Selected.png b/indra/newview/skins/default/textures/containers/TabTop_Left_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/TabTop_Middle_Off.png b/indra/newview/skins/default/textures/containers/TabTop_Middle_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/TabTop_Middle_Selected.png b/indra/newview/skins/default/textures/containers/TabTop_Middle_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/TabTop_Right_Off.png b/indra/newview/skins/default/textures/containers/TabTop_Right_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/TabTop_Right_Selected.png b/indra/newview/skins/default/textures/containers/TabTop_Right_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Left_Flash.png b/indra/newview/skins/default/textures/containers/Toolbar_Left_Flash.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Left_Off.png b/indra/newview/skins/default/textures/containers/Toolbar_Left_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Left_Over.png b/indra/newview/skins/default/textures/containers/Toolbar_Left_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Left_Selected.png b/indra/newview/skins/default/textures/containers/Toolbar_Left_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Middle_Flash.png b/indra/newview/skins/default/textures/containers/Toolbar_Middle_Flash.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Middle_Off.png b/indra/newview/skins/default/textures/containers/Toolbar_Middle_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Middle_Over.png b/indra/newview/skins/default/textures/containers/Toolbar_Middle_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Middle_Selected.png b/indra/newview/skins/default/textures/containers/Toolbar_Middle_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Right_Flash.png b/indra/newview/skins/default/textures/containers/Toolbar_Right_Flash.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Right_Off.png b/indra/newview/skins/default/textures/containers/Toolbar_Right_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Right_Over.png b/indra/newview/skins/default/textures/containers/Toolbar_Right_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/containers/Toolbar_Right_Selected.png b/indra/newview/skins/default/textures/containers/Toolbar_Right_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/crosshairs.tga b/indra/newview/skins/default/textures/crosshairs.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/default_land_picture.j2c b/indra/newview/skins/default/textures/default_land_picture.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/default_profile_picture.j2c b/indra/newview/skins/default/textures/default_profile_picture.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/direction_arrow.tga b/indra/newview/skins/default/textures/direction_arrow.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/down_arrow.png b/indra/newview/skins/default/textures/down_arrow.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/eye_button_active.tga b/indra/newview/skins/default/textures/eye_button_active.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/eye_button_inactive.tga b/indra/newview/skins/default/textures/eye_button_inactive.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/folder_arrow.tga b/indra/newview/skins/default/textures/folder_arrow.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/foot_shadow.j2c b/indra/newview/skins/default/textures/foot_shadow.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/green_checkmark.png b/indra/newview/skins/default/textures/green_checkmark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icn_media_movie.tga b/indra/newview/skins/default/textures/icn_media_movie.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icn_media_web.tga b/indra/newview/skins/default/textures/icn_media_web.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icon_avatar_offline.tga b/indra/newview/skins/default/textures/icon_avatar_offline.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icon_avatar_online.tga b/indra/newview/skins/default/textures/icon_avatar_online.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icon_diurnal.tga b/indra/newview/skins/default/textures/icon_diurnal.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icon_for_sale_adult.tga b/indra/newview/skins/default/textures/icon_for_sale_adult.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icon_top_pick.tga b/indra/newview/skins/default/textures/icon_top_pick.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/AddItem_Disabled.png b/indra/newview/skins/default/textures/icons/AddItem_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/AddItem_Off.png b/indra/newview/skins/default/textures/icons/AddItem_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/AddItem_Press.png b/indra/newview/skins/default/textures/icons/AddItem_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/AudioMute_Off.png b/indra/newview/skins/default/textures/icons/AudioMute_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/AudioMute_Over.png b/indra/newview/skins/default/textures/icons/AudioMute_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Audio_Off.png b/indra/newview/skins/default/textures/icons/Audio_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Audio_Press.png b/indra/newview/skins/default/textures/icons/Audio_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/BackArrow_Off.png b/indra/newview/skins/default/textures/icons/BackArrow_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Conv_log_inbox.png b/indra/newview/skins/default/textures/icons/Conv_log_inbox.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Copy.png b/indra/newview/skins/default/textures/icons/Copy.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/DownArrow_Off.png b/indra/newview/skins/default/textures/icons/DownArrow_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Edit_Wrench.png b/indra/newview/skins/default/textures/icons/Edit_Wrench.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/ExternalBrowser_Off.png b/indra/newview/skins/default/textures/icons/ExternalBrowser_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Female.png b/indra/newview/skins/default/textures/icons/Female.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/ForSale_Badge.png b/indra/newview/skins/default/textures/icons/ForSale_Badge.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/ForwardArrow_Off.png b/indra/newview/skins/default/textures/icons/ForwardArrow_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/ForwardArrow_Press.png b/indra/newview/skins/default/textures/icons/ForwardArrow_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Generic_Group.png b/indra/newview/skins/default/textures/icons/Generic_Group.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Generic_Group_Large.png b/indra/newview/skins/default/textures/icons/Generic_Group_Large.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Generic_Object_Small.png b/indra/newview/skins/default/textures/icons/Generic_Object_Small.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Generic_Person.png b/indra/newview/skins/default/textures/icons/Generic_Person.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Generic_Person_Large.png b/indra/newview/skins/default/textures/icons/Generic_Person_Large.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Hierarchy_View_Disabled.png b/indra/newview/skins/default/textures/icons/Hierarchy_View_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Hierarchy_View_On.png b/indra/newview/skins/default/textures/icons/Hierarchy_View_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Icon_For_Sale.png b/indra/newview/skins/default/textures/icons/Icon_For_Sale.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Info.png b/indra/newview/skins/default/textures/icons/Info.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Info_Over.png b/indra/newview/skins/default/textures/icons/Info_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Info_Small.png b/indra/newview/skins/default/textures/icons/Info_Small.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Alpha.png b/indra/newview/skins/default/textures/icons/Inv_Alpha.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Animation.png b/indra/newview/skins/default/textures/icons/Inv_Animation.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_BodyShape.png b/indra/newview/skins/default/textures/icons/Inv_BodyShape.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_CallingCard.png b/indra/newview/skins/default/textures/icons/Inv_CallingCard.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Clothing.png b/indra/newview/skins/default/textures/icons/Inv_Clothing.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Eye.png b/indra/newview/skins/default/textures/icons/Inv_Eye.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_FolderClosed.png b/indra/newview/skins/default/textures/icons/Inv_FolderClosed.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_FolderOpen.png b/indra/newview/skins/default/textures/icons/Inv_FolderOpen.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Gesture.png b/indra/newview/skins/default/textures/icons/Inv_Gesture.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Gloves.png b/indra/newview/skins/default/textures/icons/Inv_Gloves.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Hair.png b/indra/newview/skins/default/textures/icons/Inv_Hair.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Invalid.png b/indra/newview/skins/default/textures/icons/Inv_Invalid.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Jacket.png b/indra/newview/skins/default/textures/icons/Inv_Jacket.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Landmark.png b/indra/newview/skins/default/textures/icons/Inv_Landmark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Link.png b/indra/newview/skins/default/textures/icons/Inv_Link.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_LinkFolder.png b/indra/newview/skins/default/textures/icons/Inv_LinkFolder.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_LinkItem.png b/indra/newview/skins/default/textures/icons/Inv_LinkItem.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_LookFolderClosed.png b/indra/newview/skins/default/textures/icons/Inv_LookFolderClosed.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_LookFolderOpen.png b/indra/newview/skins/default/textures/icons/Inv_LookFolderOpen.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_LostClosed.png b/indra/newview/skins/default/textures/icons/Inv_LostClosed.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_LostOpen.png b/indra/newview/skins/default/textures/icons/Inv_LostOpen.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Mesh.png b/indra/newview/skins/default/textures/icons/Inv_Mesh.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Notecard.png b/indra/newview/skins/default/textures/icons/Inv_Notecard.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Object.png b/indra/newview/skins/default/textures/icons/Inv_Object.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Object_Multi.png b/indra/newview/skins/default/textures/icons/Inv_Object_Multi.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Pants.png b/indra/newview/skins/default/textures/icons/Inv_Pants.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Physics.png b/indra/newview/skins/default/textures/icons/Inv_Physics.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Script.png b/indra/newview/skins/default/textures/icons/Inv_Script.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Shirt.png b/indra/newview/skins/default/textures/icons/Inv_Shirt.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Shoe.png b/indra/newview/skins/default/textures/icons/Inv_Shoe.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Skin.png b/indra/newview/skins/default/textures/icons/Inv_Skin.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Skirt.png b/indra/newview/skins/default/textures/icons/Inv_Skirt.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Snapshot.png b/indra/newview/skins/default/textures/icons/Inv_Snapshot.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Socks.png b/indra/newview/skins/default/textures/icons/Inv_Socks.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Sound.png b/indra/newview/skins/default/textures/icons/Inv_Sound.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_SysClosed.png b/indra/newview/skins/default/textures/icons/Inv_SysClosed.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_SysOpen.png b/indra/newview/skins/default/textures/icons/Inv_SysOpen.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Tattoo.png b/indra/newview/skins/default/textures/icons/Inv_Tattoo.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Texture.png b/indra/newview/skins/default/textures/icons/Inv_Texture.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_TrashClosed.png b/indra/newview/skins/default/textures/icons/Inv_TrashClosed.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_TrashOpen.png b/indra/newview/skins/default/textures/icons/Inv_TrashOpen.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Underpants.png b/indra/newview/skins/default/textures/icons/Inv_Underpants.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Inv_Undershirt.png b/indra/newview/skins/default/textures/icons/Inv_Undershirt.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/List_View_Disabled.png b/indra/newview/skins/default/textures/icons/List_View_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/List_View_On.png b/indra/newview/skins/default/textures/icons/List_View_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Lock.png b/indra/newview/skins/default/textures/icons/Lock.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Locked_Icon.png b/indra/newview/skins/default/textures/icons/Locked_Icon.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Male.png b/indra/newview/skins/default/textures/icons/Male.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Microphone_On.png b/indra/newview/skins/default/textures/icons/Microphone_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/MinusItem_Disabled.png b/indra/newview/skins/default/textures/icons/MinusItem_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/MinusItem_Off.png b/indra/newview/skins/default/textures/icons/MinusItem_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/MinusItem_Press.png b/indra/newview/skins/default/textures/icons/MinusItem_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OptionsMenu_Disabled.png b/indra/newview/skins/default/textures/icons/OptionsMenu_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OptionsMenu_Off.png b/indra/newview/skins/default/textures/icons/OptionsMenu_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OptionsMenu_Press.png b/indra/newview/skins/default/textures/icons/OptionsMenu_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Disabled.png b/indra/newview/skins/default/textures/icons/OutboxPush_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Off.png b/indra/newview/skins/default/textures/icons/OutboxPush_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_On.png b/indra/newview/skins/default/textures/icons/OutboxPush_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_On_Over.png b/indra/newview/skins/default/textures/icons/OutboxPush_On_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Over.png b/indra/newview/skins/default/textures/icons/OutboxPush_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Press.png b/indra/newview/skins/default/textures/icons/OutboxPush_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Progress_1.png b/indra/newview/skins/default/textures/icons/OutboxPush_Progress_1.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Progress_2.png b/indra/newview/skins/default/textures/icons/OutboxPush_Progress_2.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Progress_3.png b/indra/newview/skins/default/textures/icons/OutboxPush_Progress_3.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Progress_4.png b/indra/newview/skins/default/textures/icons/OutboxPush_Progress_4.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Progress_5.png b/indra/newview/skins/default/textures/icons/OutboxPush_Progress_5.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Progress_6.png b/indra/newview/skins/default/textures/icons/OutboxPush_Progress_6.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Selected.png b/indra/newview/skins/default/textures/icons/OutboxPush_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Selected_Disabled.png b/indra/newview/skins/default/textures/icons/OutboxPush_Selected_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Selected_Over.png b/indra/newview/skins/default/textures/icons/OutboxPush_Selected_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/OutboxPush_Selected_Press.png b/indra/newview/skins/default/textures/icons/OutboxPush_Selected_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_BuildNo_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_BuildNo_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_BuildNo_Light.png b/indra/newview/skins/default/textures/icons/Parcel_BuildNo_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Build_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Build_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_DamageNo_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_DamageNo_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Damage_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Damage_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Exp_Color.png b/indra/newview/skins/default/textures/icons/Parcel_Exp_Color.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_FlyNo_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_FlyNo_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_FlyNo_Light.png b/indra/newview/skins/default/textures/icons/Parcel_FlyNo_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Fly_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Fly_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_ForSale_Light.png b/indra/newview/skins/default/textures/icons/Parcel_ForSale_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Health_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Health_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_M_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_M_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_M_Light.png b/indra/newview/skins/default/textures/icons/Parcel_M_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_PG_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_PG_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_PG_Light.png b/indra/newview/skins/default/textures/icons/Parcel_PG_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_PushNo_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_PushNo_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_PushNo_Light.png b/indra/newview/skins/default/textures/icons/Parcel_PushNo_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Push_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Push_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_R_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_R_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_R_Light.png b/indra/newview/skins/default/textures/icons/Parcel_R_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_ScriptsNo_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_ScriptsNo_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Scripts_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Scripts_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOff_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOff_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOff_Light.png b/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOff_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOn_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOn_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOn_Light.png b/indra/newview/skins/default/textures/icons/Parcel_SeeAVsOn_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_VoiceNo_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_VoiceNo_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_VoiceNo_Light.png b/indra/newview/skins/default/textures/icons/Parcel_VoiceNo_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Voice_Dark.png b/indra/newview/skins/default/textures/icons/Parcel_Voice_Dark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Parcel_Voice_Light.png b/indra/newview/skins/default/textures/icons/Parcel_Voice_Light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Pathfinding_Dirty.png b/indra/newview/skins/default/textures/icons/Pathfinding_Dirty.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Pathfinding_Disabled.png b/indra/newview/skins/default/textures/icons/Pathfinding_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Pause_Off.png b/indra/newview/skins/default/textures/icons/Pause_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Pause_Over.png b/indra/newview/skins/default/textures/icons/Pause_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Pause_Press.png b/indra/newview/skins/default/textures/icons/Pause_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Person_Check.png b/indra/newview/skins/default/textures/icons/Person_Check.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Person_Star.png b/indra/newview/skins/default/textures/icons/Person_Star.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Play_Off.png b/indra/newview/skins/default/textures/icons/Play_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Play_Over.png b/indra/newview/skins/default/textures/icons/Play_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Play_Press.png b/indra/newview/skins/default/textures/icons/Play_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_1.png b/indra/newview/skins/default/textures/icons/Progress_1.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_10.png b/indra/newview/skins/default/textures/icons/Progress_10.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_11.png b/indra/newview/skins/default/textures/icons/Progress_11.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_12.png b/indra/newview/skins/default/textures/icons/Progress_12.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_2.png b/indra/newview/skins/default/textures/icons/Progress_2.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_3.png b/indra/newview/skins/default/textures/icons/Progress_3.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_4.png b/indra/newview/skins/default/textures/icons/Progress_4.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_5.png b/indra/newview/skins/default/textures/icons/Progress_5.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_6.png b/indra/newview/skins/default/textures/icons/Progress_6.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_7.png b/indra/newview/skins/default/textures/icons/Progress_7.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_8.png b/indra/newview/skins/default/textures/icons/Progress_8.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Progress_9.png b/indra/newview/skins/default/textures/icons/Progress_9.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Refresh_Off.png b/indra/newview/skins/default/textures/icons/Refresh_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/SL_Logo.png b/indra/newview/skins/default/textures/icons/SL_Logo.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Search_Icon.png b/indra/newview/skins/default/textures/icons/Search_Icon.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Shirt_Large.png b/indra/newview/skins/default/textures/icons/Shirt_Large.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Shop.png b/indra/newview/skins/default/textures/icons/Shop.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/SkipBackward_Off.png b/indra/newview/skins/default/textures/icons/SkipBackward_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/SkipForward_Off.png b/indra/newview/skins/default/textures/icons/SkipForward_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/StopReload_Off.png b/indra/newview/skins/default/textures/icons/StopReload_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/StopReload_Over.png b/indra/newview/skins/default/textures/icons/StopReload_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Stop_Off.png b/indra/newview/skins/default/textures/icons/Stop_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Disabled.png b/indra/newview/skins/default/textures/icons/Sync_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Enabled.png b/indra/newview/skins/default/textures/icons/Sync_Enabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Progress_1.png b/indra/newview/skins/default/textures/icons/Sync_Progress_1.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Progress_2.png b/indra/newview/skins/default/textures/icons/Sync_Progress_2.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Progress_3.png b/indra/newview/skins/default/textures/icons/Sync_Progress_3.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Progress_4.png b/indra/newview/skins/default/textures/icons/Sync_Progress_4.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Progress_5.png b/indra/newview/skins/default/textures/icons/Sync_Progress_5.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Sync_Progress_6.png b/indra/newview/skins/default/textures/icons/Sync_Progress_6.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/TrashItem_Disabled.png b/indra/newview/skins/default/textures/icons/TrashItem_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/TrashItem_Off.png b/indra/newview/skins/default/textures/icons/TrashItem_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/TrashItem_Press.png b/indra/newview/skins/default/textures/icons/TrashItem_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/UnZoom_Off.png b/indra/newview/skins/default/textures/icons/UnZoom_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/UpArrow_Off.png b/indra/newview/skins/default/textures/icons/UpArrow_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/VoicePTT_Lvl1.png b/indra/newview/skins/default/textures/icons/VoicePTT_Lvl1.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/VoicePTT_Lvl2.png b/indra/newview/skins/default/textures/icons/VoicePTT_Lvl2.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/VoicePTT_Lvl3.png b/indra/newview/skins/default/textures/icons/VoicePTT_Lvl3.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/VoicePTT_Off.png b/indra/newview/skins/default/textures/icons/VoicePTT_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/VoicePTT_On.png b/indra/newview/skins/default/textures/icons/VoicePTT_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Web_Profile_Off.png b/indra/newview/skins/default/textures/icons/Web_Profile_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/YouAreHere_Badge.png b/indra/newview/skins/default/textures/icons/YouAreHere_Badge.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/Zoom_Off.png b/indra/newview/skins/default/textures/icons/Zoom_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/avaline_default_icon.jpg b/indra/newview/skins/default/textures/icons/avaline_default_icon.jpg old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/back_arrow_off.png b/indra/newview/skins/default/textures/icons/back_arrow_off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/back_arrow_over.png b/indra/newview/skins/default/textures/icons/back_arrow_over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/back_arrow_press.png b/indra/newview/skins/default/textures/icons/back_arrow_press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/check_mark.png b/indra/newview/skins/default/textures/icons/check_mark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/collapse_to_one_line.png b/indra/newview/skins/default/textures/icons/collapse_to_one_line.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/edit_mine.png b/indra/newview/skins/default/textures/icons/edit_mine.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/edit_theirs.png b/indra/newview/skins/default/textures/icons/edit_theirs.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/expand_one_liner.png b/indra/newview/skins/default/textures/icons/expand_one_liner.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/nearby_chat_icon.png b/indra/newview/skins/default/textures/icons/nearby_chat_icon.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/object_icon.png b/indra/newview/skins/default/textures/icons/object_icon.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/pop_up_caution.png b/indra/newview/skins/default/textures/icons/pop_up_caution.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/see_me_online.png b/indra/newview/skins/default/textures/icons/see_me_online.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/see_on_map.png b/indra/newview/skins/default/textures/icons/see_on_map.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/icons/unknown_icon.png b/indra/newview/skins/default/textures/icons/unknown_icon.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/jump_left_in.tga b/indra/newview/skins/default/textures/jump_left_in.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/jump_left_out.tga b/indra/newview/skins/default/textures/jump_left_out.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/jump_right_in.tga b/indra/newview/skins/default/textures/jump_right_in.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/jump_right_out.tga b/indra/newview/skins/default/textures/jump_right_out.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/lag_status_critical.tga b/indra/newview/skins/default/textures/lag_status_critical.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/lag_status_good.tga b/indra/newview/skins/default/textures/lag_status_good.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/lag_status_warning.tga b/indra/newview/skins/default/textures/lag_status_warning.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/legend.tga b/indra/newview/skins/default/textures/legend.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/locked_image.j2c b/indra/newview/skins/default/textures/locked_image.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_16.tga b/indra/newview/skins/default/textures/map_avatar_16.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_32.tga b/indra/newview/skins/default/textures/map_avatar_32.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_8.tga b/indra/newview/skins/default/textures/map_avatar_8.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_above_32.tga b/indra/newview/skins/default/textures/map_avatar_above_32.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_below_32.tga b/indra/newview/skins/default/textures/map_avatar_below_32.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_unknown_32.tga b/indra/newview/skins/default/textures/map_avatar_unknown_32.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_avatar_you_32.tga b/indra/newview/skins/default/textures/map_avatar_you_32.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_event.tga b/indra/newview/skins/default/textures/map_event.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_home.tga b/indra/newview/skins/default/textures/map_home.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_infohub.tga b/indra/newview/skins/default/textures/map_infohub.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_telehub.tga b/indra/newview/skins/default/textures/map_telehub.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/map_track_16.tga b/indra/newview/skins/default/textures/map_track_16.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/menu_separator.png b/indra/newview/skins/default/textures/menu_separator.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/missing_asset.tga b/indra/newview/skins/default/textures/missing_asset.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/model_wizard/progress_bar_bg.png b/indra/newview/skins/default/textures/model_wizard/progress_bar_bg.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/model_wizard/progress_light.png b/indra/newview/skins/default/textures/model_wizard/progress_light.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Arrow_Left_Off.png b/indra/newview/skins/default/textures/navbar/Arrow_Left_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Arrow_Right_Off.png b/indra/newview/skins/default/textures/navbar/Arrow_Right_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/BuyArrow_Over.png b/indra/newview/skins/default/textures/navbar/BuyArrow_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/BuyArrow_Press.png b/indra/newview/skins/default/textures/navbar/BuyArrow_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Favorite_Link_Over.png b/indra/newview/skins/default/textures/navbar/Favorite_Link_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Favorite_Star_Active.png b/indra/newview/skins/default/textures/navbar/Favorite_Star_Active.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Favorite_Star_Off.png b/indra/newview/skins/default/textures/navbar/Favorite_Star_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Favorite_Star_Over.png b/indra/newview/skins/default/textures/navbar/Favorite_Star_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Favorite_Star_Press.png b/indra/newview/skins/default/textures/navbar/Favorite_Star_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/FileMenu_Divider.png b/indra/newview/skins/default/textures/navbar/FileMenu_Divider.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Flag.png b/indra/newview/skins/default/textures/navbar/Flag.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Help_Press.png b/indra/newview/skins/default/textures/navbar/Help_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Home_Off.png b/indra/newview/skins/default/textures/navbar/Home_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Info_Off.png b/indra/newview/skins/default/textures/navbar/Info_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Info_Over.png b/indra/newview/skins/default/textures/navbar/Info_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Info_Press.png b/indra/newview/skins/default/textures/navbar/Info_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Lock.png b/indra/newview/skins/default/textures/navbar/Lock.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/NavBar_BG.png b/indra/newview/skins/default/textures/navbar/NavBar_BG.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/NavBar_BG_NoFav_Bevel.png b/indra/newview/skins/default/textures/navbar/NavBar_BG_NoFav_Bevel.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/NavBar_BG_NoNav_Bevel.png b/indra/newview/skins/default/textures/navbar/NavBar_BG_NoNav_Bevel.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Row_Selection.png b/indra/newview/skins/default/textures/navbar/Row_Selection.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/Search.png b/indra/newview/skins/default/textures/navbar/Search.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/navbar/separator.png b/indra/newview/skins/default/textures/navbar/separator.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/notify_caution_icon.tga b/indra/newview/skins/default/textures/notify_caution_icon.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/pixiesmall.j2c b/indra/newview/skins/default/textures/pixiesmall.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/red_x.png b/indra/newview/skins/default/textures/red_x.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/rounded_square.j2c b/indra/newview/skins/default/textures/rounded_square.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/script_error.j2c b/indra/newview/skins/default/textures/script_error.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/silhouette.j2c b/indra/newview/skins/default/textures/silhouette.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/slim_icon_16_viewer.tga b/indra/newview/skins/default/textures/slim_icon_16_viewer.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/snapshot_download.png b/indra/newview/skins/default/textures/snapshot_download.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/snapshot_email.png b/indra/newview/skins/default/textures/snapshot_email.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/spacer24.tga b/indra/newview/skins/default/textures/spacer24.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/tabarea.tga b/indra/newview/skins/default/textures/tabarea.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/Activate_Checkmark.png b/indra/newview/skins/default/textures/taskpanel/Activate_Checkmark.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Dock_Foreground.png b/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Dock_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Dock_Press.png b/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Dock_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Undock_Foreground.png b/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Undock_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Undock_Press.png b/indra/newview/skins/default/textures/taskpanel/Sidebar_Icon_Undock_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_Close_Off.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_Close_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_Home_Selected.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_Home_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_Me_Off.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_Me_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_Open_Off.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_Open_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_People_Off.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_People_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_Places_Off.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_Places_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TabIcon_Things_Off.png b/indra/newview/skins/default/textures/taskpanel/TabIcon_Things_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TaskPanel_Tab_Off.png b/indra/newview/skins/default/textures/taskpanel/TaskPanel_Tab_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/taskpanel/TaskPanel_Tab_Selected.png b/indra/newview/skins/default/textures/taskpanel/TaskPanel_Tab_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/tearoff_pressed.tga b/indra/newview/skins/default/textures/tearoff_pressed.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/tearoffbox.tga b/indra/newview/skins/default/textures/tearoffbox.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/appearance.png b/indra/newview/skins/default/textures/toolbar_icons/appearance.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/avatars.png b/indra/newview/skins/default/textures/toolbar_icons/avatars.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/build.png b/indra/newview/skins/default/textures/toolbar_icons/build.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/caret_bottom.png b/indra/newview/skins/default/textures/toolbar_icons/caret_bottom.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/caret_left.png b/indra/newview/skins/default/textures/toolbar_icons/caret_left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/caret_right.png b/indra/newview/skins/default/textures/toolbar_icons/caret_right.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/chat.png b/indra/newview/skins/default/textures/toolbar_icons/chat.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/destinations.png b/indra/newview/skins/default/textures/toolbar_icons/destinations.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/gestures.png b/indra/newview/skins/default/textures/toolbar_icons/gestures.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/howto.png b/indra/newview/skins/default/textures/toolbar_icons/howto.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/inventory.png b/indra/newview/skins/default/textures/toolbar_icons/inventory.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/land.png b/indra/newview/skins/default/textures/toolbar_icons/land.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/map.png b/indra/newview/skins/default/textures/toolbar_icons/map.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/marketplace.png b/indra/newview/skins/default/textures/toolbar_icons/marketplace.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/mini_cart.png b/indra/newview/skins/default/textures/toolbar_icons/mini_cart.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/mini_map.png b/indra/newview/skins/default/textures/toolbar_icons/mini_map.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/move.png b/indra/newview/skins/default/textures/toolbar_icons/move.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/nearbyvoice.png b/indra/newview/skins/default/textures/toolbar_icons/nearbyvoice.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/outbox.png b/indra/newview/skins/default/textures/toolbar_icons/outbox.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/people.png b/indra/newview/skins/default/textures/toolbar_icons/people.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/picks.png b/indra/newview/skins/default/textures/toolbar_icons/picks.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/places.png b/indra/newview/skins/default/textures/toolbar_icons/places.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/preferences.png b/indra/newview/skins/default/textures/toolbar_icons/preferences.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/profile.png b/indra/newview/skins/default/textures/toolbar_icons/profile.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/search.png b/indra/newview/skins/default/textures/toolbar_icons/search.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/snapshot.png b/indra/newview/skins/default/textures/toolbar_icons/snapshot.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/speak.png b/indra/newview/skins/default/textures/toolbar_icons/speak.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/toolbar_icons/view.png b/indra/newview/skins/default/textures/toolbar_icons/view.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/transparent.j2c b/indra/newview/skins/default/textures/transparent.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/up_arrow.png b/indra/newview/skins/default/textures/up_arrow.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/uv_test1.j2c b/indra/newview/skins/default/textures/uv_test1.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/uv_test2.tga b/indra/newview/skins/default/textures/uv_test2.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/voice_meter_dot.j2c b/indra/newview/skins/default/textures/voice_meter_dot.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/voice_meter_rings.j2c b/indra/newview/skins/default/textures/voice_meter_rings.j2c old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/white.tga b/indra/newview/skins/default/textures/white.tga old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Down.png b/indra/newview/skins/default/textures/widgets/Arrow_Down.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Left.png b/indra/newview/skins/default/textures/widgets/Arrow_Left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Right.png b/indra/newview/skins/default/textures/widgets/Arrow_Right.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Small_Left.png b/indra/newview/skins/default/textures/widgets/Arrow_Small_Left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Small_Right.png b/indra/newview/skins/default/textures/widgets/Arrow_Small_Right.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Small_Up.png b/indra/newview/skins/default/textures/widgets/Arrow_Small_Up.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Arrow_Up.png b/indra/newview/skins/default/textures/widgets/Arrow_Up.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Badge_Background.png b/indra/newview/skins/default/textures/widgets/Badge_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Badge_Border.png b/indra/newview/skins/default/textures/widgets/Badge_Border.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Disabled.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Off.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Over.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Press.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Left_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Disabled.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Off.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Over.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Press.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Middle_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Disabled.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Off.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Over.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Press.png b/indra/newview/skins/default/textures/widgets/BreadCrumbBtn_Right_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Checkbox_Disabled.png b/indra/newview/skins/default/textures/widgets/Checkbox_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Checkbox_Off.png b/indra/newview/skins/default/textures/widgets/Checkbox_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Checkbox_On.png b/indra/newview/skins/default/textures/widgets/Checkbox_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Checkbox_On_Disabled.png b/indra/newview/skins/default/textures/widgets/Checkbox_On_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Checkbox_On_Press.png b/indra/newview/skins/default/textures/widgets/Checkbox_On_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Checkbox_Press.png b/indra/newview/skins/default/textures/widgets/Checkbox_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ComboButton_Disabled.png b/indra/newview/skins/default/textures/widgets/ComboButton_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ComboButton_Off.png b/indra/newview/skins/default/textures/widgets/ComboButton_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ComboButton_On.png b/indra/newview/skins/default/textures/widgets/ComboButton_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ComboButton_Selected.png b/indra/newview/skins/default/textures/widgets/ComboButton_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ComboButton_UpOff.png b/indra/newview/skins/default/textures/widgets/ComboButton_UpOff.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ComboButton_UpSelected.png b/indra/newview/skins/default/textures/widgets/ComboButton_UpSelected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/DisclosureArrow_Opened_Off.png b/indra/newview/skins/default/textures/widgets/DisclosureArrow_Opened_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/DropDown_Disabled.png b/indra/newview/skins/default/textures/widgets/DropDown_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/DropDown_Off.png b/indra/newview/skins/default/textures/widgets/DropDown_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/DropDown_On.png b/indra/newview/skins/default/textures/widgets/DropDown_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/DropDown_Press.png b/indra/newview/skins/default/textures/widgets/DropDown_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/DropTarget.png b/indra/newview/skins/default/textures/widgets/DropTarget.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Error_Tag_Background.png b/indra/newview/skins/default/textures/widgets/Error_Tag_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Linden_Dollar_Alert.png b/indra/newview/skins/default/textures/widgets/Linden_Dollar_Alert.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png b/indra/newview/skins/default/textures/widgets/Linden_Dollar_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ListItem_Over.png b/indra/newview/skins/default/textures/widgets/ListItem_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ListItem_Select.png b/indra/newview/skins/default/textures/widgets/ListItem_Select.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/MarketplaceBtn_Off.png b/indra/newview/skins/default/textures/widgets/MarketplaceBtn_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/MarketplaceBtn_Selected.png b/indra/newview/skins/default/textures/widgets/MarketplaceBtn_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/New_Tag_Background.png b/indra/newview/skins/default/textures/widgets/New_Tag_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/New_Tag_Border.png b/indra/newview/skins/default/textures/widgets/New_Tag_Border.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ProgressBar.png b/indra/newview/skins/default/textures/widgets/ProgressBar.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ProgressTrack.png b/indra/newview/skins/default/textures/widgets/ProgressTrack.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Disabled.png b/indra/newview/skins/default/textures/widgets/PushButton_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Off.png b/indra/newview/skins/default/textures/widgets/PushButton_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_On.png b/indra/newview/skins/default/textures/widgets/PushButton_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_On_Selected.png b/indra/newview/skins/default/textures/widgets/PushButton_On_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Over.png b/indra/newview/skins/default/textures/widgets/PushButton_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Press.png b/indra/newview/skins/default/textures/widgets/PushButton_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Selected.png b/indra/newview/skins/default/textures/widgets/PushButton_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Selected_Disabled.png b/indra/newview/skins/default/textures/widgets/PushButton_Selected_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/PushButton_Selected_Press.png b/indra/newview/skins/default/textures/widgets/PushButton_Selected_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/RadioButton_Disabled.png b/indra/newview/skins/default/textures/widgets/RadioButton_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/RadioButton_Off.png b/indra/newview/skins/default/textures/widgets/RadioButton_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/RadioButton_On.png b/indra/newview/skins/default/textures/widgets/RadioButton_On.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/RadioButton_On_Disabled.png b/indra/newview/skins/default/textures/widgets/RadioButton_On_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/RadioButton_On_Press.png b/indra/newview/skins/default/textures/widgets/RadioButton_On_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/RadioButton_Press.png b/indra/newview/skins/default/textures/widgets/RadioButton_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Down.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Down.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Down_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Down_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Down_Over_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Down_Over_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Left.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Right.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Up.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Up.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Up_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Up_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Up_Over_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Up_Over_Opaque.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollThumb_Horiz.png b/indra/newview/skins/default/textures/widgets/ScrollThumb_Horiz.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollThumb_Vert.png b/indra/newview/skins/default/textures/widgets/ScrollThumb_Vert.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollTrack_Horiz.png b/indra/newview/skins/default/textures/widgets/ScrollTrack_Horiz.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/ScrollTrack_Vert.png b/indra/newview/skins/default/textures/widgets/ScrollTrack_Vert.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Disabled.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Off.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Over.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Press.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Disabled.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Over.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Press.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Left_Selected_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Disabled.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected_Disabled.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected_Press.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Middle_Selected_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Disabled.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Off.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_On_Selected.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_On_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Over.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Press.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected_Disabled.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected_Press.png b/indra/newview/skins/default/textures/widgets/SegmentedBtn_Right_Selected_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SliderThumb_Disabled.png b/indra/newview/skins/default/textures/widgets/SliderThumb_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SliderThumb_Off.png b/indra/newview/skins/default/textures/widgets/SliderThumb_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SliderThumb_Press.png b/indra/newview/skins/default/textures/widgets/SliderThumb_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SliderTrack_Horiz.png b/indra/newview/skins/default/textures/widgets/SliderTrack_Horiz.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/SliderTrack_Vert.png b/indra/newview/skins/default/textures/widgets/SliderTrack_Vert.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Stepper_Down_Off.png b/indra/newview/skins/default/textures/widgets/Stepper_Down_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Stepper_Down_Press.png b/indra/newview/skins/default/textures/widgets/Stepper_Down_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Stepper_Up_Off.png b/indra/newview/skins/default/textures/widgets/Stepper_Up_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Stepper_Up_Press.png b/indra/newview/skins/default/textures/widgets/Stepper_Up_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/TextField_Active.png b/indra/newview/skins/default/textures/widgets/TextField_Active.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/TextField_Disabled.png b/indra/newview/skins/default/textures/widgets/TextField_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/TextField_Off.png b/indra/newview/skins/default/textures/widgets/TextField_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/TextField_Search_Active.png b/indra/newview/skins/default/textures/widgets/TextField_Search_Active.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/TextField_Search_Disabled.png b/indra/newview/skins/default/textures/widgets/TextField_Search_Disabled.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/TextField_Search_Off.png b/indra/newview/skins/default/textures/widgets/TextField_Search_Off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/Tooltip.png b/indra/newview/skins/default/textures/widgets/Tooltip.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/bevel_background.png b/indra/newview/skins/default/textures/widgets/bevel_background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/buy_off.png b/indra/newview/skins/default/textures/widgets/buy_off.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/buy_over.png b/indra/newview/skins/default/textures/widgets/buy_over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/buy_press.png b/indra/newview/skins/default/textures/widgets/buy_press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/jump_left_in.png b/indra/newview/skins/default/textures/widgets/jump_left_in.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/jump_left_out.png b/indra/newview/skins/default/textures/widgets/jump_left_out.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/jump_right_in.png b/indra/newview/skins/default/textures/widgets/jump_right_in.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/widgets/jump_right_out.png b/indra/newview/skins/default/textures/widgets/jump_right_out.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Dragbar.png b/indra/newview/skins/default/textures/windows/Dragbar.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Flyout_Left.png b/indra/newview/skins/default/textures/windows/Flyout_Left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Flyout_Pointer.png b/indra/newview/skins/default/textures/windows/Flyout_Pointer.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Flyout_Right.png b/indra/newview/skins/default/textures/windows/Flyout_Right.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Close_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Close_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Close_Press.png b/indra/newview/skins/default/textures/windows/Icon_Close_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Close_Toast.png b/indra/newview/skins/default/textures/windows/Icon_Close_Toast.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Dock_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Dock_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Dock_Press.png b/indra/newview/skins/default/textures/windows/Icon_Dock_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Gear_Background.png b/indra/newview/skins/default/textures/windows/Icon_Gear_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Gear_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Gear_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Gear_Press.png b/indra/newview/skins/default/textures/windows/Icon_Gear_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Help_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Help_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Help_Press.png b/indra/newview/skins/default/textures/windows/Icon_Help_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Minimize_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Minimize_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Minimize_Press.png b/indra/newview/skins/default/textures/windows/Icon_Minimize_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Restore_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Restore_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Restore_Press.png b/indra/newview/skins/default/textures/windows/Icon_Restore_Press.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Icon_Undock_Foreground.png b/indra/newview/skins/default/textures/windows/Icon_Undock_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Inspector_Background.png b/indra/newview/skins/default/textures/windows/Inspector_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Inspector_Hover.png b/indra/newview/skins/default/textures/windows/Inspector_Hover.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Inspector_I.png b/indra/newview/skins/default/textures/windows/Inspector_I.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Resize_Corner.png b/indra/newview/skins/default/textures/windows/Resize_Corner.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Toast_Background.png b/indra/newview/skins/default/textures/windows/Toast_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Toast_CloseBtn.png b/indra/newview/skins/default/textures/windows/Toast_CloseBtn.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Toast_Over.png b/indra/newview/skins/default/textures/windows/Toast_Over.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Volume_Background.png b/indra/newview/skins/default/textures/windows/Volume_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Wearables_Divider.png b/indra/newview/skins/default/textures/windows/Wearables_Divider.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Window_Background.png b/indra/newview/skins/default/textures/windows/Window_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Window_Foreground.png b/indra/newview/skins/default/textures/windows/Window_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Window_NoTitle_Background.png b/indra/newview/skins/default/textures/windows/Window_NoTitle_Background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/Window_NoTitle_Foreground.png b/indra/newview/skins/default/textures/windows/Window_NoTitle_Foreground.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/hint_arrow_down.png b/indra/newview/skins/default/textures/windows/hint_arrow_down.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/hint_arrow_left.png b/indra/newview/skins/default/textures/windows/hint_arrow_left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/hint_arrow_lower_left.png b/indra/newview/skins/default/textures/windows/hint_arrow_lower_left.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/hint_arrow_right.png b/indra/newview/skins/default/textures/windows/hint_arrow_right.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/hint_arrow_up.png b/indra/newview/skins/default/textures/windows/hint_arrow_up.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/hint_background.png b/indra/newview/skins/default/textures/windows/hint_background.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/startup_logo.png b/indra/newview/skins/default/textures/windows/startup_logo.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/windows/yellow_gradient.png b/indra/newview/skins/default/textures/windows/yellow_gradient.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/world/BeaconArrow.png b/indra/newview/skins/default/textures/world/BeaconArrow.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/world/CameraDragDot.png b/indra/newview/skins/default/textures/world/CameraDragDot.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/world/NoEntryLines.png b/indra/newview/skins/default/textures/world/NoEntryLines.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/textures/world/NoEntryPassLines.png b/indra/newview/skins/default/textures/world/NoEntryPassLines.png old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_about.xml b/indra/newview/skins/default/xui/da/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_about_land.xml b/indra/newview/skins/default/xui/da/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_activeim.xml b/indra/newview/skins/default/xui/da/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_animation_preview.xml b/indra/newview/skins/default/xui/da/floater_animation_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_auction.xml b/indra/newview/skins/default/xui/da/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_avatar_picker.xml b/indra/newview/skins/default/xui/da/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_avatar_textures.xml b/indra/newview/skins/default/xui/da/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_beacons.xml b/indra/newview/skins/default/xui/da/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_build_options.xml b/indra/newview/skins/default/xui/da/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_bulk_perms.xml b/indra/newview/skins/default/xui/da/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_bumps.xml b/indra/newview/skins/default/xui/da/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_buy_contents.xml b/indra/newview/skins/default/xui/da/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_buy_currency.xml b/indra/newview/skins/default/xui/da/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/da/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_buy_land.xml b/indra/newview/skins/default/xui/da/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_buy_object.xml b/indra/newview/skins/default/xui/da/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_camera.xml b/indra/newview/skins/default/xui/da/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_choose_group.xml b/indra/newview/skins/default/xui/da/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_color_picker.xml b/indra/newview/skins/default/xui/da/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_critical.xml b/indra/newview/skins/default/xui/da/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_display_name.xml b/indra/newview/skins/default/xui/da/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_event.xml b/indra/newview/skins/default/xui/da/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_font_test.xml b/indra/newview/skins/default/xui/da/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_gesture.xml b/indra/newview/skins/default/xui/da/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_god_tools.xml b/indra/newview/skins/default/xui/da/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_hardware_settings.xml b/indra/newview/skins/default/xui/da/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_help_browser.xml b/indra/newview/skins/default/xui/da/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_hud.xml b/indra/newview/skins/default/xui/da/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_im_container.xml b/indra/newview/skins/default/xui/da/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_im_session.xml b/indra/newview/skins/default/xui/da/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_image_preview.xml b/indra/newview/skins/default/xui/da/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_import_collada.xml b/indra/newview/skins/default/xui/da/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_incoming_call.xml b/indra/newview/skins/default/xui/da/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_inspect.xml b/indra/newview/skins/default/xui/da/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_inventory.xml b/indra/newview/skins/default/xui/da/floater_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/da/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/da/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_joystick.xml b/indra/newview/skins/default/xui/da/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_lagmeter.xml b/indra/newview/skins/default/xui/da/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_land_holdings.xml b/indra/newview/skins/default/xui/da/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/da/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_lsl_guide.xml b/indra/newview/skins/default/xui/da/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_map.xml b/indra/newview/skins/default/xui/da/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_media_browser.xml b/indra/newview/skins/default/xui/da/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_media_settings.xml b/indra/newview/skins/default/xui/da/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_mem_leaking.xml b/indra/newview/skins/default/xui/da/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_model_preview.xml b/indra/newview/skins/default/xui/da/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_moveview.xml b/indra/newview/skins/default/xui/da/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_mute_object.xml b/indra/newview/skins/default/xui/da/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_nearby_chat.xml b/indra/newview/skins/default/xui/da/floater_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_openobject.xml b/indra/newview/skins/default/xui/da/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_outgoing_call.xml b/indra/newview/skins/default/xui/da/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_pay.xml b/indra/newview/skins/default/xui/da/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_pay_object.xml b/indra/newview/skins/default/xui/da/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_perm_prefs.xml b/indra/newview/skins/default/xui/da/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_postcard.xml b/indra/newview/skins/default/xui/da/floater_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_preferences.xml b/indra/newview/skins/default/xui/da/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_preview_animation.xml b/indra/newview/skins/default/xui/da/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_preview_gesture.xml b/indra/newview/skins/default/xui/da/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_preview_notecard.xml b/indra/newview/skins/default/xui/da/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_preview_sound.xml b/indra/newview/skins/default/xui/da/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_preview_texture.xml b/indra/newview/skins/default/xui/da/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_price_for_listing.xml b/indra/newview/skins/default/xui/da/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_publish_classified.xml b/indra/newview/skins/default/xui/da/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_region_debug_console.xml b/indra/newview/skins/default/xui/da/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_region_info.xml b/indra/newview/skins/default/xui/da/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_report_abuse.xml b/indra/newview/skins/default/xui/da/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_script_debug.xml b/indra/newview/skins/default/xui/da/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/da/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_script_limits.xml b/indra/newview/skins/default/xui/da/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_script_preview.xml b/indra/newview/skins/default/xui/da/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_script_queue.xml b/indra/newview/skins/default/xui/da/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_script_search.xml b/indra/newview/skins/default/xui/da/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_search.xml b/indra/newview/skins/default/xui/da/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_select_key.xml b/indra/newview/skins/default/xui/da/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_sell_land.xml b/indra/newview/skins/default/xui/da/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_settings_debug.xml b/indra/newview/skins/default/xui/da/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_snapshot.xml b/indra/newview/skins/default/xui/da/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_sound_devices.xml b/indra/newview/skins/default/xui/da/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_sound_preview.xml b/indra/newview/skins/default/xui/da/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_stats.xml b/indra/newview/skins/default/xui/da/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_sys_well.xml b/indra/newview/skins/default/xui/da/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_telehub.xml b/indra/newview/skins/default/xui/da/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/da/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_tools.xml b/indra/newview/skins/default/xui/da/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_top_objects.xml b/indra/newview/skins/default/xui/da/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_tos.xml b/indra/newview/skins/default/xui/da/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_url_entry.xml b/indra/newview/skins/default/xui/da/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_voice_controls.xml b/indra/newview/skins/default/xui/da/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_voice_effect.xml b/indra/newview/skins/default/xui/da/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_web_content.xml b/indra/newview/skins/default/xui/da/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/da/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_window_size.xml b/indra/newview/skins/default/xui/da/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/floater_world_map.xml b/indra/newview/skins/default/xui/da/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/inspect_avatar.xml b/indra/newview/skins/default/xui/da/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/inspect_group.xml b/indra/newview/skins/default/xui/da/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/inspect_object.xml b/indra/newview/skins/default/xui/da/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/inspect_remote_object.xml b/indra/newview/skins/default/xui/da/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/language_settings.xml b/indra/newview/skins/default/xui/da/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/da/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_attachment_other.xml b/indra/newview/skins/default/xui/da/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_attachment_self.xml b/indra/newview/skins/default/xui/da/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_avatar_icon.xml b/indra/newview/skins/default/xui/da/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_avatar_other.xml b/indra/newview/skins/default/xui/da/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_avatar_self.xml b/indra/newview/skins/default/xui/da/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_bottomtray.xml b/indra/newview/skins/default/xui/da/menu_bottomtray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_cof_attachment.xml b/indra/newview/skins/default/xui/da/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_cof_body_part.xml b/indra/newview/skins/default/xui/da/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_cof_clothing.xml b/indra/newview/skins/default/xui/da/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_cof_gear.xml b/indra/newview/skins/default/xui/da/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_edit.xml b/indra/newview/skins/default/xui/da/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_favorites.xml b/indra/newview/skins/default/xui/da/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_gesture_gear.xml b/indra/newview/skins/default/xui/da/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_group_plus.xml b/indra/newview/skins/default/xui/da/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_hide_navbar.xml b/indra/newview/skins/default/xui/da/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/da/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/da/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/da/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/da/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/da/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/da/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/da/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inventory.xml b/indra/newview/skins/default/xui/da/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inventory_add.xml b/indra/newview/skins/default/xui/da/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/da/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_land.xml b/indra/newview/skins/default/xui/da/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_landmark.xml b/indra/newview/skins/default/xui/da/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_login.xml b/indra/newview/skins/default/xui/da/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_media_ctrl.xml b/indra/newview/skins/default/xui/da/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_mini_map.xml b/indra/newview/skins/default/xui/da/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/da/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_navbar.xml b/indra/newview/skins/default/xui/da/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_nearby_chat.xml b/indra/newview/skins/default/xui/da/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_notification_well_button.xml b/indra/newview/skins/default/xui/da/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_object.xml b/indra/newview/skins/default/xui/da/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_object_icon.xml b/indra/newview/skins/default/xui/da/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_outfit_gear.xml b/indra/newview/skins/default/xui/da/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_outfit_tab.xml b/indra/newview/skins/default/xui/da/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_participant_list.xml b/indra/newview/skins/default/xui/da/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/da/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_groups.xml b/indra/newview/skins/default/xui/da/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/da/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_nearby.xml b/indra/newview/skins/default/xui/da/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/da/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/da/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/da/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_picks.xml b/indra/newview/skins/default/xui/da/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_picks_plus.xml b/indra/newview/skins/default/xui/da/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_place.xml b/indra/newview/skins/default/xui/da/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_place_add_button.xml b/indra/newview/skins/default/xui/da/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/da/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/da/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_profile_overflow.xml b/indra/newview/skins/default/xui/da/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_save_outfit.xml b/indra/newview/skins/default/xui/da/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_script_chiclet.xml b/indra/newview/skins/default/xui/da/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_slurl.xml b/indra/newview/skins/default/xui/da/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/da/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/da/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/da/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_text_editor.xml b/indra/newview/skins/default/xui/da/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_topinfobar.xml b/indra/newview/skins/default/xui/da/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_agent.xml b/indra/newview/skins/default/xui/da/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_group.xml b/indra/newview/skins/default/xui/da/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_http.xml b/indra/newview/skins/default/xui/da/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_inventory.xml b/indra/newview/skins/default/xui/da/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_map.xml b/indra/newview/skins/default/xui/da/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_objectim.xml b/indra/newview/skins/default/xui/da/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_parcel.xml b/indra/newview/skins/default/xui/da/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_slapp.xml b/indra/newview/skins/default/xui/da/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_slurl.xml b/indra/newview/skins/default/xui/da/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_url_teleport.xml b/indra/newview/skins/default/xui/da/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_viewer.xml b/indra/newview/skins/default/xui/da/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/da/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_wearing_gear.xml b/indra/newview/skins/default/xui/da/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/menu_wearing_tab.xml b/indra/newview/skins/default/xui/da/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/mime_types.xml b/indra/newview/skins/default/xui/da/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/mime_types_linux.xml b/indra/newview/skins/default/xui/da/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/mime_types_mac.xml b/indra/newview/skins/default/xui/da/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/notifications.xml b/indra/newview/skins/default/xui/da/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/da/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_active_object_row.xml b/indra/newview/skins/default/xui/da/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/da/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/da/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/da/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/da/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/da/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_bottomtray.xml b/indra/newview/skins/default/xui/da/panel_bottomtray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/da/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_classified_info.xml b/indra/newview/skins/default/xui/da/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/da/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/da/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_cof_wearables.xml b/indra/newview/skins/default/xui/da/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/da/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/da/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_alpha.xml b/indra/newview/skins/default/xui/da/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_classified.xml b/indra/newview/skins/default/xui/da/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_eyes.xml b/indra/newview/skins/default/xui/da/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_gloves.xml b/indra/newview/skins/default/xui/da/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_hair.xml b/indra/newview/skins/default/xui/da/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_jacket.xml b/indra/newview/skins/default/xui/da/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_pants.xml b/indra/newview/skins/default/xui/da/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_physics.xml b/indra/newview/skins/default/xui/da/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_pick.xml b/indra/newview/skins/default/xui/da/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_profile.xml b/indra/newview/skins/default/xui/da/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_shape.xml b/indra/newview/skins/default/xui/da/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_shirt.xml b/indra/newview/skins/default/xui/da/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_shoes.xml b/indra/newview/skins/default/xui/da/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_skin.xml b/indra/newview/skins/default/xui/da/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_skirt.xml b/indra/newview/skins/default/xui/da/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_socks.xml b/indra/newview/skins/default/xui/da/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/da/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_underpants.xml b/indra/newview/skins/default/xui/da/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/da/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_edit_wearable.xml b/indra/newview/skins/default/xui/da/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_control_panel.xml b/indra/newview/skins/default/xui/da/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_general.xml b/indra/newview/skins/default/xui/da/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/da/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_invite.xml b/indra/newview/skins/default/xui/da/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_land_money.xml b/indra/newview/skins/default/xui/da/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_list_item.xml b/indra/newview/skins/default/xui/da/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_notices.xml b/indra/newview/skins/default/xui/da/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_notify.xml b/indra/newview/skins/default/xui/da/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_group_roles.xml b/indra/newview/skins/default/xui/da/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_im_control_panel.xml b/indra/newview/skins/default/xui/da/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_inventory_item.xml b/indra/newview/skins/default/xui/da/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_landmark_info.xml b/indra/newview/skins/default/xui/da/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_landmarks.xml b/indra/newview/skins/default/xui/da/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_login.xml b/indra/newview/skins/default/xui/da/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_main_inventory.xml b/indra/newview/skins/default/xui/da/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_me.xml b/indra/newview/skins/default/xui/da/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_media_settings_general.xml b/indra/newview/skins/default/xui/da/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/da/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_media_settings_security.xml b/indra/newview/skins/default/xui/da/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_navigation_bar.xml b/indra/newview/skins/default/xui/da/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/da/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_nearby_media.xml b/indra/newview/skins/default/xui/da/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_notify_textbox.xml b/indra/newview/skins/default/xui/da/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_online_status_toast.xml b/indra/newview/skins/default/xui/da/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_outfit_edit.xml b/indra/newview/skins/default/xui/da/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/da/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/da/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_outfits_list.xml b/indra/newview/skins/default/xui/da/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/da/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_people.xml b/indra/newview/skins/default/xui/da/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_pick_info.xml b/indra/newview/skins/default/xui/da/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_picks.xml b/indra/newview/skins/default/xui/da/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_place_profile.xml b/indra/newview/skins/default/xui/da/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_places.xml b/indra/newview/skins/default/xui/da/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/da/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/da/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_chat.xml b/indra/newview/skins/default/xui/da/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_colors.xml b/indra/newview/skins/default/xui/da/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_general.xml b/indra/newview/skins/default/xui/da/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/da/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_move.xml b/indra/newview/skins/default/xui/da/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/da/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_setup.xml b/indra/newview/skins/default/xui/da/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_preferences_sound.xml b/indra/newview/skins/default/xui/da/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/da/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_region_covenant.xml b/indra/newview/skins/default/xui/da/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_region_debug.xml b/indra/newview/skins/default/xui/da/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_region_estate.xml b/indra/newview/skins/default/xui/da/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_region_general.xml b/indra/newview/skins/default/xui/da/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_region_terrain.xml b/indra/newview/skins/default/xui/da/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_region_texture.xml b/indra/newview/skins/default/xui/da/panel_region_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_script_ed.xml b/indra/newview/skins/default/xui/da/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/da/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/da/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_scrolling_param.xml b/indra/newview/skins/default/xui/da/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/da/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_side_tray.xml b/indra/newview/skins/default/xui/da/panel_side_tray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/da/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_sound_devices.xml b/indra/newview/skins/default/xui/da/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/da/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_status_bar.xml b/indra/newview/skins/default/xui/da/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_teleport_history.xml b/indra/newview/skins/default/xui/da/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/da/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_voice_effect.xml b/indra/newview/skins/default/xui/da/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/panel_world_map.xml b/indra/newview/skins/default/xui/da/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/role_actions.xml b/indra/newview/skins/default/xui/da/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/sidepanel_appearance.xml b/indra/newview/skins/default/xui/da/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/sidepanel_inventory.xml b/indra/newview/skins/default/xui/da/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/sidepanel_item_info.xml b/indra/newview/skins/default/xui/da/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/sidepanel_task_info.xml b/indra/newview/skins/default/xui/da/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/strings.xml b/indra/newview/skins/default/xui/da/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/teleport_strings.xml b/indra/newview/skins/default/xui/da/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/da/xui_version.xml b/indra/newview/skins/default/xui/da/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_about.xml b/indra/newview/skins/default/xui/de/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_about_land.xml b/indra/newview/skins/default/xui/de/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_activeim.xml b/indra/newview/skins/default/xui/de/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/de/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/de/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_auction.xml b/indra/newview/skins/default/xui/de/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_autoreplace.xml b/indra/newview/skins/default/xui/de/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_avatar.xml b/indra/newview/skins/default/xui/de/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_avatar_picker.xml b/indra/newview/skins/default/xui/de/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_avatar_textures.xml b/indra/newview/skins/default/xui/de/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_beacons.xml b/indra/newview/skins/default/xui/de/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_build_options.xml b/indra/newview/skins/default/xui/de/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_bulk_perms.xml b/indra/newview/skins/default/xui/de/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_bumps.xml b/indra/newview/skins/default/xui/de/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_buy_contents.xml b/indra/newview/skins/default/xui/de/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_buy_currency.xml b/indra/newview/skins/default/xui/de/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/de/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_buy_land.xml b/indra/newview/skins/default/xui/de/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_buy_object.xml b/indra/newview/skins/default/xui/de/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_camera.xml b/indra/newview/skins/default/xui/de/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_chat_bar.xml b/indra/newview/skins/default/xui/de/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_choose_group.xml b/indra/newview/skins/default/xui/de/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_color_picker.xml b/indra/newview/skins/default/xui/de/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_critical.xml b/indra/newview/skins/default/xui/de/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/de/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_destinations.xml b/indra/newview/skins/default/xui/de/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_display_name.xml b/indra/newview/skins/default/xui/de/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/de/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/de/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/de/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_environment_settings.xml b/indra/newview/skins/default/xui/de/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_event.xml b/indra/newview/skins/default/xui/de/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_fast_timers.xml b/indra/newview/skins/default/xui/de/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_font_test.xml b/indra/newview/skins/default/xui/de/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_gesture.xml b/indra/newview/skins/default/xui/de/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_god_tools.xml b/indra/newview/skins/default/xui/de/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_hardware_settings.xml b/indra/newview/skins/default/xui/de/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_help_browser.xml b/indra/newview/skins/default/xui/de/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_how_to.xml b/indra/newview/skins/default/xui/de/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_hud.xml b/indra/newview/skins/default/xui/de/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_im_container.xml b/indra/newview/skins/default/xui/de/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_im_session.xml b/indra/newview/skins/default/xui/de/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_image_preview.xml b/indra/newview/skins/default/xui/de/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_import_collada.xml b/indra/newview/skins/default/xui/de/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_incoming_call.xml b/indra/newview/skins/default/xui/de/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_inspect.xml b/indra/newview/skins/default/xui/de/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/de/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/de/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_joystick.xml b/indra/newview/skins/default/xui/de/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_lagmeter.xml b/indra/newview/skins/default/xui/de/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_land_holdings.xml b/indra/newview/skins/default/xui/de/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/de/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_lsl_guide.xml b/indra/newview/skins/default/xui/de/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_map.xml b/indra/newview/skins/default/xui/de/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_media_browser.xml b/indra/newview/skins/default/xui/de/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_media_settings.xml b/indra/newview/skins/default/xui/de/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_mem_leaking.xml b/indra/newview/skins/default/xui/de/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/de/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_model_preview.xml b/indra/newview/skins/default/xui/de/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_moveview.xml b/indra/newview/skins/default/xui/de/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_mute_object.xml b/indra/newview/skins/default/xui/de/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_my_appearance.xml b/indra/newview/skins/default/xui/de/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_my_inventory.xml b/indra/newview/skins/default/xui/de/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_notification.xml b/indra/newview/skins/default/xui/de/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_notifications_console.xml b/indra/newview/skins/default/xui/de/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_object_weights.xml b/indra/newview/skins/default/xui/de/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_openobject.xml b/indra/newview/skins/default/xui/de/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/de/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_outgoing_call.xml b/indra/newview/skins/default/xui/de/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/de/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/de/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/de/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_pay.xml b/indra/newview/skins/default/xui/de/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_pay_object.xml b/indra/newview/skins/default/xui/de/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_people.xml b/indra/newview/skins/default/xui/de/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_perm_prefs.xml b/indra/newview/skins/default/xui/de/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_picks.xml b/indra/newview/skins/default/xui/de/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_places.xml b/indra/newview/skins/default/xui/de/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_post_process.xml b/indra/newview/skins/default/xui/de/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preferences.xml b/indra/newview/skins/default/xui/de/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/de/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preview_animation.xml b/indra/newview/skins/default/xui/de/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preview_gesture.xml b/indra/newview/skins/default/xui/de/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preview_notecard.xml b/indra/newview/skins/default/xui/de/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preview_sound.xml b/indra/newview/skins/default/xui/de/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_preview_texture.xml b/indra/newview/skins/default/xui/de/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_price_for_listing.xml b/indra/newview/skins/default/xui/de/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_publish_classified.xml b/indra/newview/skins/default/xui/de/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_region_debug_console.xml b/indra/newview/skins/default/xui/de/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_region_info.xml b/indra/newview/skins/default/xui/de/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_report_abuse.xml b/indra/newview/skins/default/xui/de/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_script_debug.xml b/indra/newview/skins/default/xui/de/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/de/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_script_limits.xml b/indra/newview/skins/default/xui/de/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_script_preview.xml b/indra/newview/skins/default/xui/de/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_script_queue.xml b/indra/newview/skins/default/xui/de/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_script_search.xml b/indra/newview/skins/default/xui/de/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_search.xml b/indra/newview/skins/default/xui/de/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_select_key.xml b/indra/newview/skins/default/xui/de/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_sell_land.xml b/indra/newview/skins/default/xui/de/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_settings_debug.xml b/indra/newview/skins/default/xui/de/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_snapshot.xml b/indra/newview/skins/default/xui/de/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_sound_devices.xml b/indra/newview/skins/default/xui/de/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_sound_preview.xml b/indra/newview/skins/default/xui/de/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_spellcheck.xml b/indra/newview/skins/default/xui/de/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/de/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_stats.xml b/indra/newview/skins/default/xui/de/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_sys_well.xml b/indra/newview/skins/default/xui/de/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_telehub.xml b/indra/newview/skins/default/xui/de/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/de/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/de/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/de/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/de/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_tools.xml b/indra/newview/skins/default/xui/de/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_top_objects.xml b/indra/newview/skins/default/xui/de/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_tos.xml b/indra/newview/skins/default/xui/de/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_toybox.xml b/indra/newview/skins/default/xui/de/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_translation_settings.xml b/indra/newview/skins/default/xui/de/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_url_entry.xml b/indra/newview/skins/default/xui/de/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_voice_controls.xml b/indra/newview/skins/default/xui/de/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_voice_effect.xml b/indra/newview/skins/default/xui/de/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_web_content.xml b/indra/newview/skins/default/xui/de/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/de/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_window_size.xml b/indra/newview/skins/default/xui/de/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/floater_world_map.xml b/indra/newview/skins/default/xui/de/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/inspect_avatar.xml b/indra/newview/skins/default/xui/de/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/inspect_group.xml b/indra/newview/skins/default/xui/de/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/inspect_object.xml b/indra/newview/skins/default/xui/de/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/inspect_remote_object.xml b/indra/newview/skins/default/xui/de/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/language_settings.xml b/indra/newview/skins/default/xui/de/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/de/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_attachment_other.xml b/indra/newview/skins/default/xui/de/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_attachment_self.xml b/indra/newview/skins/default/xui/de/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_avatar_icon.xml b/indra/newview/skins/default/xui/de/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_avatar_other.xml b/indra/newview/skins/default/xui/de/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_avatar_self.xml b/indra/newview/skins/default/xui/de/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_cof_attachment.xml b/indra/newview/skins/default/xui/de/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_cof_body_part.xml b/indra/newview/skins/default/xui/de/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_cof_clothing.xml b/indra/newview/skins/default/xui/de/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_cof_gear.xml b/indra/newview/skins/default/xui/de/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_edit.xml b/indra/newview/skins/default/xui/de/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_favorites.xml b/indra/newview/skins/default/xui/de/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_gesture_gear.xml b/indra/newview/skins/default/xui/de/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_group_plus.xml b/indra/newview/skins/default/xui/de/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_hide_navbar.xml b/indra/newview/skins/default/xui/de/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/de/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/de/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/de/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/de/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/de/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inventory.xml b/indra/newview/skins/default/xui/de/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inventory_add.xml b/indra/newview/skins/default/xui/de/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/de/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_land.xml b/indra/newview/skins/default/xui/de/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_landmark.xml b/indra/newview/skins/default/xui/de/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_login.xml b/indra/newview/skins/default/xui/de/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_media_ctrl.xml b/indra/newview/skins/default/xui/de/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_mini_map.xml b/indra/newview/skins/default/xui/de/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/de/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_navbar.xml b/indra/newview/skins/default/xui/de/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_nearby_chat.xml b/indra/newview/skins/default/xui/de/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_notification_well_button.xml b/indra/newview/skins/default/xui/de/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_object.xml b/indra/newview/skins/default/xui/de/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_object_icon.xml b/indra/newview/skins/default/xui/de/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_outfit_gear.xml b/indra/newview/skins/default/xui/de/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_outfit_tab.xml b/indra/newview/skins/default/xui/de/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_participant_list.xml b/indra/newview/skins/default/xui/de/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/de/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_groups.xml b/indra/newview/skins/default/xui/de/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/de/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_nearby.xml b/indra/newview/skins/default/xui/de/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_picks.xml b/indra/newview/skins/default/xui/de/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_picks_plus.xml b/indra/newview/skins/default/xui/de/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_place.xml b/indra/newview/skins/default/xui/de/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_place_add_button.xml b/indra/newview/skins/default/xui/de/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/de/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/de/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_profile_overflow.xml b/indra/newview/skins/default/xui/de/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_save_outfit.xml b/indra/newview/skins/default/xui/de/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_script_chiclet.xml b/indra/newview/skins/default/xui/de/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_slurl.xml b/indra/newview/skins/default/xui/de/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/de/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/de/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/de/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_text_editor.xml b/indra/newview/skins/default/xui/de/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_toolbars.xml b/indra/newview/skins/default/xui/de/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_topinfobar.xml b/indra/newview/skins/default/xui/de/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_agent.xml b/indra/newview/skins/default/xui/de/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_group.xml b/indra/newview/skins/default/xui/de/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_http.xml b/indra/newview/skins/default/xui/de/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_inventory.xml b/indra/newview/skins/default/xui/de/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_map.xml b/indra/newview/skins/default/xui/de/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_objectim.xml b/indra/newview/skins/default/xui/de/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_parcel.xml b/indra/newview/skins/default/xui/de/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_slapp.xml b/indra/newview/skins/default/xui/de/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_slurl.xml b/indra/newview/skins/default/xui/de/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_url_teleport.xml b/indra/newview/skins/default/xui/de/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_viewer.xml b/indra/newview/skins/default/xui/de/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/de/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_wearing_gear.xml b/indra/newview/skins/default/xui/de/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/menu_wearing_tab.xml b/indra/newview/skins/default/xui/de/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/mime_types.xml b/indra/newview/skins/default/xui/de/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/mime_types_linux.xml b/indra/newview/skins/default/xui/de/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/mime_types_mac.xml b/indra/newview/skins/default/xui/de/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/notifications.xml b/indra/newview/skins/default/xui/de/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/de/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_active_object_row.xml b/indra/newview/skins/default/xui/de/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/de/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/de/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_avatar_tag.xml b/indra/newview/skins/default/xui/de/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/de/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/de/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/de/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_chat_header.xml b/indra/newview/skins/default/xui/de/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/de/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_classified_info.xml b/indra/newview/skins/default/xui/de/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/de/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/de/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_cof_wearables.xml b/indra/newview/skins/default/xui/de/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/de/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/de/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_alpha.xml b/indra/newview/skins/default/xui/de/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_classified.xml b/indra/newview/skins/default/xui/de/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_eyes.xml b/indra/newview/skins/default/xui/de/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_gloves.xml b/indra/newview/skins/default/xui/de/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_hair.xml b/indra/newview/skins/default/xui/de/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_jacket.xml b/indra/newview/skins/default/xui/de/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_pants.xml b/indra/newview/skins/default/xui/de/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_physics.xml b/indra/newview/skins/default/xui/de/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_pick.xml b/indra/newview/skins/default/xui/de/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_profile.xml b/indra/newview/skins/default/xui/de/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_shape.xml b/indra/newview/skins/default/xui/de/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_shirt.xml b/indra/newview/skins/default/xui/de/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_shoes.xml b/indra/newview/skins/default/xui/de/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_skin.xml b/indra/newview/skins/default/xui/de/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_skirt.xml b/indra/newview/skins/default/xui/de/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_socks.xml b/indra/newview/skins/default/xui/de/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/de/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_underpants.xml b/indra/newview/skins/default/xui/de/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/de/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_edit_wearable.xml b/indra/newview/skins/default/xui/de/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_control_panel.xml b/indra/newview/skins/default/xui/de/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_general.xml b/indra/newview/skins/default/xui/de/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_invite.xml b/indra/newview/skins/default/xui/de/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_land_money.xml b/indra/newview/skins/default/xui/de/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_list_item.xml b/indra/newview/skins/default/xui/de/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_notices.xml b/indra/newview/skins/default/xui/de/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_notify.xml b/indra/newview/skins/default/xui/de/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_group_roles.xml b/indra/newview/skins/default/xui/de/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_im_control_panel.xml b/indra/newview/skins/default/xui/de/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_instant_message.xml b/indra/newview/skins/default/xui/de/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_inventory_item.xml b/indra/newview/skins/default/xui/de/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_landmark_info.xml b/indra/newview/skins/default/xui/de/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_landmarks.xml b/indra/newview/skins/default/xui/de/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_login.xml b/indra/newview/skins/default/xui/de/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_main_inventory.xml b/indra/newview/skins/default/xui/de/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_me.xml b/indra/newview/skins/default/xui/de/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_media_settings_general.xml b/indra/newview/skins/default/xui/de/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/de/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_media_settings_security.xml b/indra/newview/skins/default/xui/de/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_navigation_bar.xml b/indra/newview/skins/default/xui/de/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_nearby_chat.xml b/indra/newview/skins/default/xui/de/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/de/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_nearby_media.xml b/indra/newview/skins/default/xui/de/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_notifications_channel.xml b/indra/newview/skins/default/xui/de/panel_notifications_channel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_notify_textbox.xml b/indra/newview/skins/default/xui/de/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_online_status_toast.xml b/indra/newview/skins/default/xui/de/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/de/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_outfit_edit.xml b/indra/newview/skins/default/xui/de/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/de/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/de/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_outfits_list.xml b/indra/newview/skins/default/xui/de/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/de/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_people.xml b/indra/newview/skins/default/xui/de/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_pick_info.xml b/indra/newview/skins/default/xui/de/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_picks.xml b/indra/newview/skins/default/xui/de/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_place_profile.xml b/indra/newview/skins/default/xui/de/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_places.xml b/indra/newview/skins/default/xui/de/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_postcard_message.xml b/indra/newview/skins/default/xui/de/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_postcard_settings.xml b/indra/newview/skins/default/xui/de/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/de/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/de/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_chat.xml b/indra/newview/skins/default/xui/de/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_colors.xml b/indra/newview/skins/default/xui/de/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_general.xml b/indra/newview/skins/default/xui/de/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/de/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_move.xml b/indra/newview/skins/default/xui/de/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_setup.xml b/indra/newview/skins/default/xui/de/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_preferences_sound.xml b/indra/newview/skins/default/xui/de/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/de/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_region_covenant.xml b/indra/newview/skins/default/xui/de/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_region_debug.xml b/indra/newview/skins/default/xui/de/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_region_environment.xml b/indra/newview/skins/default/xui/de/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_region_estate.xml b/indra/newview/skins/default/xui/de/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_region_general.xml b/indra/newview/skins/default/xui/de/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_region_terrain.xml b/indra/newview/skins/default/xui/de/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_script_ed.xml b/indra/newview/skins/default/xui/de/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_script_question_toast.xml b/indra/newview/skins/default/xui/de/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_scrolling_param.xml b/indra/newview/skins/default/xui/de/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/de/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/de/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_sidetray_home_tab.xml b/indra/newview/skins/default/xui/de/panel_sidetray_home_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/de/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_snapshot_local.xml b/indra/newview/skins/default/xui/de/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_snapshot_options.xml b/indra/newview/skins/default/xui/de/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/de/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/de/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_sound_devices.xml b/indra/newview/skins/default/xui/de/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/de/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_status_bar.xml b/indra/newview/skins/default/xui/de/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_sys_well_item.xml b/indra/newview/skins/default/xui/de/panel_sys_well_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_teleport_history.xml b/indra/newview/skins/default/xui/de/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/de/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_voice_effect.xml b/indra/newview/skins/default/xui/de/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/de/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/panel_world_map.xml b/indra/newview/skins/default/xui/de/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/role_actions.xml b/indra/newview/skins/default/xui/de/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/sidepanel_appearance.xml b/indra/newview/skins/default/xui/de/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/sidepanel_inventory.xml b/indra/newview/skins/default/xui/de/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/sidepanel_item_info.xml b/indra/newview/skins/default/xui/de/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/sidepanel_task_info.xml b/indra/newview/skins/default/xui/de/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/strings.xml b/indra/newview/skins/default/xui/de/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/teleport_strings.xml b/indra/newview/skins/default/xui/de/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/de/xui_version.xml b/indra/newview/skins/default/xui/de/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/accordion_drag.xml b/indra/newview/skins/default/xui/en/accordion_drag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/accordion_parent.xml b/indra/newview/skins/default/xui/en/accordion_parent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/alert_button.xml b/indra/newview/skins/default/xui/en/alert_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/alert_check_box.xml b/indra/newview/skins/default/xui/en/alert_check_box.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/alert_icon.xml b/indra/newview/skins/default/xui/en/alert_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/alert_line_editor.xml b/indra/newview/skins/default/xui/en/alert_line_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/favorites_bar_button.xml b/indra/newview/skins/default/xui/en/favorites_bar_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_aaa.xml b/indra/newview/skins/default/xui/en/floater_aaa.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_about.xml b/indra/newview/skins/default/xui/en/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_activeim.xml b/indra/newview/skins/default/xui/en/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/en/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_auction.xml b/indra/newview/skins/default/xui/en/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_autoreplace.xml b/indra/newview/skins/default/xui/en/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_avatar.xml b/indra/newview/skins/default/xui/en/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_avatar_picker.xml b/indra/newview/skins/default/xui/en/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_avatar_textures.xml b/indra/newview/skins/default/xui/en/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_beacons.xml b/indra/newview/skins/default/xui/en/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_build_options.xml b/indra/newview/skins/default/xui/en/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_bulk_perms.xml b/indra/newview/skins/default/xui/en/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_bumps.xml b/indra/newview/skins/default/xui/en/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_buy_contents.xml b/indra/newview/skins/default/xui/en/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_buy_currency.xml b/indra/newview/skins/default/xui/en/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/en/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_buy_land.xml b/indra/newview/skins/default/xui/en/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_buy_object.xml b/indra/newview/skins/default/xui/en/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_camera.xml b/indra/newview/skins/default/xui/en/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_choose_group.xml b/indra/newview/skins/default/xui/en/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_color_picker.xml b/indra/newview/skins/default/xui/en/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_conversation_log.xml b/indra/newview/skins/default/xui/en/floater_conversation_log.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_conversation_preview.xml b/indra/newview/skins/default/xui/en/floater_conversation_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_critical.xml b/indra/newview/skins/default/xui/en/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/en/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_destinations.xml b/indra/newview/skins/default/xui/en/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_display_name.xml b/indra/newview/skins/default/xui/en/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/en/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/en/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_environment_settings.xml b/indra/newview/skins/default/xui/en/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_event.xml b/indra/newview/skins/default/xui/en/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_fast_timers.xml b/indra/newview/skins/default/xui/en/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_font_test.xml b/indra/newview/skins/default/xui/en/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_gesture.xml b/indra/newview/skins/default/xui/en/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_god_tools.xml b/indra/newview/skins/default/xui/en/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_hardware_settings.xml b/indra/newview/skins/default/xui/en/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_help_browser.xml b/indra/newview/skins/default/xui/en/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_how_to.xml b/indra/newview/skins/default/xui/en/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_hud.xml b/indra/newview/skins/default/xui/en/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_im_container.xml b/indra/newview/skins/default/xui/en/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_im_session.xml b/indra/newview/skins/default/xui/en/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_image_preview.xml b/indra/newview/skins/default/xui/en/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_import_collada.xml b/indra/newview/skins/default/xui/en/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_incoming_call.xml b/indra/newview/skins/default/xui/en/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_inspect.xml b/indra/newview/skins/default/xui/en/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/en/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/en/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_joystick.xml b/indra/newview/skins/default/xui/en/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_lagmeter.xml b/indra/newview/skins/default/xui/en/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_land_holdings.xml b/indra/newview/skins/default/xui/en/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/en/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_lsl_guide.xml b/indra/newview/skins/default/xui/en/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_map.xml b/indra/newview/skins/default/xui/en/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_media_browser.xml b/indra/newview/skins/default/xui/en/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_media_settings.xml b/indra/newview/skins/default/xui/en/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_mem_leaking.xml b/indra/newview/skins/default/xui/en/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/en/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_model_preview.xml b/indra/newview/skins/default/xui/en/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_moveview.xml b/indra/newview/skins/default/xui/en/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_mute_object.xml b/indra/newview/skins/default/xui/en/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_my_appearance.xml b/indra/newview/skins/default/xui/en/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_my_inventory.xml b/indra/newview/skins/default/xui/en/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_my_web_profile.xml b/indra/newview/skins/default/xui/en/floater_my_web_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_notification.xml b/indra/newview/skins/default/xui/en/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_notifications_console.xml b/indra/newview/skins/default/xui/en/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_object_weights.xml b/indra/newview/skins/default/xui/en/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_openobject.xml b/indra/newview/skins/default/xui/en/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_outgoing_call.xml b/indra/newview/skins/default/xui/en/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/en/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/en/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/en/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_pay.xml b/indra/newview/skins/default/xui/en/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_pay_object.xml b/indra/newview/skins/default/xui/en/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_people.xml b/indra/newview/skins/default/xui/en/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_perm_prefs.xml b/indra/newview/skins/default/xui/en/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_picks.xml b/indra/newview/skins/default/xui/en/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_places.xml b/indra/newview/skins/default/xui/en/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_post_process.xml b/indra/newview/skins/default/xui/en/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preferences.xml b/indra/newview/skins/default/xui/en/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/en/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preview_animation.xml b/indra/newview/skins/default/xui/en/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preview_gesture.xml b/indra/newview/skins/default/xui/en/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preview_notecard.xml b/indra/newview/skins/default/xui/en/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preview_sound.xml b/indra/newview/skins/default/xui/en/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_preview_texture.xml b/indra/newview/skins/default/xui/en/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_price_for_listing.xml b/indra/newview/skins/default/xui/en/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_publish_classified.xml b/indra/newview/skins/default/xui/en/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_region_debug_console.xml b/indra/newview/skins/default/xui/en/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_region_info.xml b/indra/newview/skins/default/xui/en/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_report_abuse.xml b/indra/newview/skins/default/xui/en/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script.xml b/indra/newview/skins/default/xui/en/floater_script.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script_debug.xml b/indra/newview/skins/default/xui/en/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/en/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script_limits.xml b/indra/newview/skins/default/xui/en/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script_preview.xml b/indra/newview/skins/default/xui/en/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script_queue.xml b/indra/newview/skins/default/xui/en/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_script_search.xml b/indra/newview/skins/default/xui/en/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_search.xml b/indra/newview/skins/default/xui/en/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_select_key.xml b/indra/newview/skins/default/xui/en/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_sell_land.xml b/indra/newview/skins/default/xui/en/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_settings_debug.xml b/indra/newview/skins/default/xui/en/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_side_bar_tab.xml b/indra/newview/skins/default/xui/en/floater_side_bar_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_snapshot.xml b/indra/newview/skins/default/xui/en/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_sound_devices.xml b/indra/newview/skins/default/xui/en/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_sound_preview.xml b/indra/newview/skins/default/xui/en/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_spellcheck.xml b/indra/newview/skins/default/xui/en/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/en/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_stats.xml b/indra/newview/skins/default/xui/en/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_sys_well.xml b/indra/newview/skins/default/xui/en/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_telehub.xml b/indra/newview/skins/default/xui/en/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_button.xml b/indra/newview/skins/default/xui/en/floater_test_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_checkbox.xml b/indra/newview/skins/default/xui/en/floater_test_checkbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_combobox.xml b/indra/newview/skins/default/xui/en/floater_test_combobox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_inspectors.xml b/indra/newview/skins/default/xui/en/floater_test_inspectors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_layout.xml b/indra/newview/skins/default/xui/en/floater_test_layout.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/en/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_line_editor.xml b/indra/newview/skins/default/xui/en/floater_test_line_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_list_view.xml b/indra/newview/skins/default/xui/en/floater_test_list_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_navigation_bar.xml b/indra/newview/skins/default/xui/en/floater_test_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_radiogroup.xml b/indra/newview/skins/default/xui/en/floater_test_radiogroup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_slider.xml b/indra/newview/skins/default/xui/en/floater_test_slider.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_spinner.xml b/indra/newview/skins/default/xui/en/floater_test_spinner.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_text_editor.xml b/indra/newview/skins/default/xui/en/floater_test_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/en/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_textbox.xml b/indra/newview/skins/default/xui/en/floater_test_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_toolbar.xml b/indra/newview/skins/default/xui/en/floater_test_toolbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_test_widgets.xml b/indra/newview/skins/default/xui/en/floater_test_widgets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/en/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/en/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_top_objects.xml b/indra/newview/skins/default/xui/en/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_tos.xml b/indra/newview/skins/default/xui/en/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_toybox.xml b/indra/newview/skins/default/xui/en/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_translation_settings.xml b/indra/newview/skins/default/xui/en/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_ui_preview.xml b/indra/newview/skins/default/xui/en/floater_ui_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_url_entry.xml b/indra/newview/skins/default/xui/en/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_voice_chat_volume.xml b/indra/newview/skins/default/xui/en/floater_voice_chat_volume.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_voice_effect.xml b/indra/newview/skins/default/xui/en/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_voice_volume.xml b/indra/newview/skins/default/xui/en/floater_voice_volume.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_web_content.xml b/indra/newview/skins/default/xui/en/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_web_profile.xml b/indra/newview/skins/default/xui/en/floater_web_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/en/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_window_size.xml b/indra/newview/skins/default/xui/en/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/floater_world_map.xml b/indra/newview/skins/default/xui/en/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/fonts.xml b/indra/newview/skins/default/xui/en/fonts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/inspect_avatar.xml b/indra/newview/skins/default/xui/en/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/inspect_group.xml b/indra/newview/skins/default/xui/en/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/inspect_object.xml b/indra/newview/skins/default/xui/en/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/inspect_remote_object.xml b/indra/newview/skins/default/xui/en/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/inspect_toast.xml b/indra/newview/skins/default/xui/en/inspect_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/inspector_info_ctrl.xml b/indra/newview/skins/default/xui/en/inspector_info_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/language_settings.xml b/indra/newview/skins/default/xui/en/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/main_view.xml b/indra/newview/skins/default/xui/en/main_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/en/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_attachment_other.xml b/indra/newview/skins/default/xui/en/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_attachment_self.xml b/indra/newview/skins/default/xui/en/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_avatar_icon.xml b/indra/newview/skins/default/xui/en/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_avatar_other.xml b/indra/newview/skins/default/xui/en/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_avatar_self.xml b/indra/newview/skins/default/xui/en/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_cof_attachment.xml b/indra/newview/skins/default/xui/en/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_cof_body_part.xml b/indra/newview/skins/default/xui/en/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_cof_clothing.xml b/indra/newview/skins/default/xui/en/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_cof_gear.xml b/indra/newview/skins/default/xui/en/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_conversation.xml b/indra/newview/skins/default/xui/en/menu_conversation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_conversation_log_gear.xml b/indra/newview/skins/default/xui/en/menu_conversation_log_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_conversation_log_view.xml b/indra/newview/skins/default/xui/en/menu_conversation_log_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_edit.xml b/indra/newview/skins/default/xui/en/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_favorites.xml b/indra/newview/skins/default/xui/en/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_gesture_gear.xml b/indra/newview/skins/default/xui/en/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_group_plus.xml b/indra/newview/skins/default/xui/en/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_hide_navbar.xml b/indra/newview/skins/default/xui/en/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_im_conversation.xml b/indra/newview/skins/default/xui/en/menu_im_conversation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_im_session_showmodes.xml b/indra/newview/skins/default/xui/en/menu_im_session_showmodes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/en/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/en/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/en/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/en/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/en/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_inventory.xml b/indra/newview/skins/default/xui/en/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_inventory_add.xml b/indra/newview/skins/default/xui/en/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_land.xml b/indra/newview/skins/default/xui/en/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_landmark.xml b/indra/newview/skins/default/xui/en/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_login.xml b/indra/newview/skins/default/xui/en/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_media_ctrl.xml b/indra/newview/skins/default/xui/en/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_mini_map.xml b/indra/newview/skins/default/xui/en/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/en/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_navbar.xml b/indra/newview/skins/default/xui/en/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_nearby_chat.xml b/indra/newview/skins/default/xui/en/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_notification_well_button.xml b/indra/newview/skins/default/xui/en/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_object.xml b/indra/newview/skins/default/xui/en/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_object_icon.xml b/indra/newview/skins/default/xui/en/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_outfit_gear.xml b/indra/newview/skins/default/xui/en/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_outfit_tab.xml b/indra/newview/skins/default/xui/en/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_participant_list.xml b/indra/newview/skins/default/xui/en/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_participant_view.xml b/indra/newview/skins/default/xui/en/menu_participant_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_blocked_gear.xml b/indra/newview/skins/default/xui/en/menu_people_blocked_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_blocked_plus.xml b/indra/newview/skins/default/xui/en/menu_people_blocked_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_blocked_view.xml b/indra/newview/skins/default/xui/en/menu_people_blocked_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_friends_view.xml b/indra/newview/skins/default/xui/en/menu_people_friends_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_groups.xml b/indra/newview/skins/default/xui/en/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_groups_view.xml b/indra/newview/skins/default/xui/en/menu_people_groups_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby.xml b/indra/newview/skins/default/xui/en/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby_view.xml b/indra/newview/skins/default/xui/en/menu_people_nearby_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_people_recent_view.xml b/indra/newview/skins/default/xui/en/menu_people_recent_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_picks.xml b/indra/newview/skins/default/xui/en/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_picks_plus.xml b/indra/newview/skins/default/xui/en/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_place.xml b/indra/newview/skins/default/xui/en/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_place_add_button.xml b/indra/newview/skins/default/xui/en/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/en/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/en/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_profile_overflow.xml b/indra/newview/skins/default/xui/en/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_save_outfit.xml b/indra/newview/skins/default/xui/en/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_script_chiclet.xml b/indra/newview/skins/default/xui/en/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_slurl.xml b/indra/newview/skins/default/xui/en/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/en/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/en/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/en/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_text_editor.xml b/indra/newview/skins/default/xui/en/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_toolbars.xml b/indra/newview/skins/default/xui/en/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_topinfobar.xml b/indra/newview/skins/default/xui/en/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_agent.xml b/indra/newview/skins/default/xui/en/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_group.xml b/indra/newview/skins/default/xui/en/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_http.xml b/indra/newview/skins/default/xui/en/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_inventory.xml b/indra/newview/skins/default/xui/en/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_map.xml b/indra/newview/skins/default/xui/en/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_objectim.xml b/indra/newview/skins/default/xui/en/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_parcel.xml b/indra/newview/skins/default/xui/en/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_slapp.xml b/indra/newview/skins/default/xui/en/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_slurl.xml b/indra/newview/skins/default/xui/en/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_url_teleport.xml b/indra/newview/skins/default/xui/en/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/en/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_wearing_gear.xml b/indra/newview/skins/default/xui/en/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/menu_wearing_tab.xml b/indra/newview/skins/default/xui/en/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/mime_types.xml b/indra/newview/skins/default/xui/en/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/mime_types_linux.xml b/indra/newview/skins/default/xui/en/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/mime_types_mac.xml b/indra/newview/skins/default/xui/en/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/notification_visibility.xml b/indra/newview/skins/default/xui/en/notification_visibility.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/en/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_active_object_row.xml b/indra/newview/skins/default/xui/en/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/en/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_avatar_tag.xml b/indra/newview/skins/default/xui/en/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_blocked_list_item.xml b/indra/newview/skins/default/xui/en/panel_blocked_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/en/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/en/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/en/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_chat_header.xml b/indra/newview/skins/default/xui/en/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_chat_item.xml b/indra/newview/skins/default/xui/en/panel_chat_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_chat_separator.xml b/indra/newview/skins/default/xui/en/panel_chat_separator.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/en/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_classified_info.xml b/indra/newview/skins/default/xui/en/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_classifieds_list_item.xml b/indra/newview/skins/default/xui/en/panel_classifieds_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/en/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/en/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_cof_wearables.xml b/indra/newview/skins/default/xui/en/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_conversation_list_item.xml b/indra/newview/skins/default/xui/en/panel_conversation_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_conversation_log_list_item.xml b/indra/newview/skins/default/xui/en/panel_conversation_log_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/en/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/en/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_alpha.xml b/indra/newview/skins/default/xui/en/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_classified.xml b/indra/newview/skins/default/xui/en/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_eyes.xml b/indra/newview/skins/default/xui/en/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_gloves.xml b/indra/newview/skins/default/xui/en/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_hair.xml b/indra/newview/skins/default/xui/en/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_jacket.xml b/indra/newview/skins/default/xui/en/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_pants.xml b/indra/newview/skins/default/xui/en/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_physics.xml b/indra/newview/skins/default/xui/en/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_pick.xml b/indra/newview/skins/default/xui/en/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_profile.xml b/indra/newview/skins/default/xui/en/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_shape.xml b/indra/newview/skins/default/xui/en/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_shirt.xml b/indra/newview/skins/default/xui/en/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_shoes.xml b/indra/newview/skins/default/xui/en/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_skin.xml b/indra/newview/skins/default/xui/en/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_skirt.xml b/indra/newview/skins/default/xui/en/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_socks.xml b/indra/newview/skins/default/xui/en/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/en/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_underpants.xml b/indra/newview/skins/default/xui/en/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/en/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_edit_wearable.xml b/indra/newview/skins/default/xui/en/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_generic_tip.xml b/indra/newview/skins/default/xui/en/panel_generic_tip.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_general.xml b/indra/newview/skins/default/xui/en/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_invite.xml b/indra/newview/skins/default/xui/en/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_land_money.xml b/indra/newview/skins/default/xui/en/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_list_item.xml b/indra/newview/skins/default/xui/en/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_notices.xml b/indra/newview/skins/default/xui/en/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_notify.xml b/indra/newview/skins/default/xui/en/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_group_roles.xml b/indra/newview/skins/default/xui/en/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_hint.xml b/indra/newview/skins/default/xui/en/panel_hint.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_hint_image.xml b/indra/newview/skins/default/xui/en/panel_hint_image.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_hud.xml b/indra/newview/skins/default/xui/en/panel_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_inbox_inventory.xml b/indra/newview/skins/default/xui/en/panel_inbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_instant_message.xml b/indra/newview/skins/default/xui/en/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_inventory_item.xml b/indra/newview/skins/default/xui/en/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_landmark_info.xml b/indra/newview/skins/default/xui/en/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_landmarks.xml b/indra/newview/skins/default/xui/en/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_login.xml b/indra/newview/skins/default/xui/en/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_main_inventory.xml b/indra/newview/skins/default/xui/en/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_me.xml b/indra/newview/skins/default/xui/en/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_media_settings_general.xml b/indra/newview/skins/default/xui/en/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_media_settings_security.xml b/indra/newview/skins/default/xui/en/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_navigation_bar.xml b/indra/newview/skins/default/xui/en/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_nearby_chat.xml b/indra/newview/skins/default/xui/en/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/en/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_nearby_media.xml b/indra/newview/skins/default/xui/en/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_notification.xml b/indra/newview/skins/default/xui/en/panel_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_notifications_channel.xml b/indra/newview/skins/default/xui/en/panel_notifications_channel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_notify_textbox.xml b/indra/newview/skins/default/xui/en/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_online_status_toast.xml b/indra/newview/skins/default/xui/en/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/en/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_outfit_edit.xml b/indra/newview/skins/default/xui/en/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/en/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/en/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_outfits_list.xml b/indra/newview/skins/default/xui/en/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/en/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_people.xml b/indra/newview/skins/default/xui/en/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_pick_info.xml b/indra/newview/skins/default/xui/en/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_pick_list_item.xml b/indra/newview/skins/default/xui/en/panel_pick_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_picks.xml b/indra/newview/skins/default/xui/en/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_place_profile.xml b/indra/newview/skins/default/xui/en/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_places.xml b/indra/newview/skins/default/xui/en/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_postcard_message.xml b/indra/newview/skins/default/xui/en/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_postcard_settings.xml b/indra/newview/skins/default/xui/en/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/en/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/en/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_chat.xml b/indra/newview/skins/default/xui/en/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_colors.xml b/indra/newview/skins/default/xui/en/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_general.xml b/indra/newview/skins/default/xui/en/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_move.xml b/indra/newview/skins/default/xui/en/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_setup.xml b/indra/newview/skins/default/xui/en/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_preferences_sound.xml b/indra/newview/skins/default/xui/en/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_progress.xml b/indra/newview/skins/default/xui/en/panel_progress.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_region_covenant.xml b/indra/newview/skins/default/xui/en/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_region_debug.xml b/indra/newview/skins/default/xui/en/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_region_environment.xml b/indra/newview/skins/default/xui/en/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_region_estate.xml b/indra/newview/skins/default/xui/en/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_region_general.xml b/indra/newview/skins/default/xui/en/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_region_terrain.xml b/indra/newview/skins/default/xui/en/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_script_ed.xml b/indra/newview/skins/default/xui/en/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/en/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/en/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_script_question_toast.xml b/indra/newview/skins/default/xui/en/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_scrolling_param.xml b/indra/newview/skins/default/xui/en/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/en/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/en/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml b/indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/en/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_snapshot_local.xml b/indra/newview/skins/default/xui/en/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_snapshot_options.xml b/indra/newview/skins/default/xui/en/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/en/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/en/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_sound_devices.xml b/indra/newview/skins/default/xui/en/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/en/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_status_bar.xml b/indra/newview/skins/default/xui/en/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_sys_well_item.xml b/indra/newview/skins/default/xui/en/panel_sys_well_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_teleport_history.xml b/indra/newview/skins/default/xui/en/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/en/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_toast.xml b/indra/newview/skins/default/xui/en/panel_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_toolbar_view.xml b/indra/newview/skins/default/xui/en/panel_toolbar_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_topinfo_bar.xml b/indra/newview/skins/default/xui/en/panel_topinfo_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_voice_effect.xml b/indra/newview/skins/default/xui/en/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/panel_world_map.xml b/indra/newview/skins/default/xui/en/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/role_actions.xml b/indra/newview/skins/default/xui/en/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/sidepanel_appearance.xml b/indra/newview/skins/default/xui/en/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/sidepanel_task_info.xml b/indra/newview/skins/default/xui/en/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/teleport_strings.xml b/indra/newview/skins/default/xui/en/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/accordion.xml b/indra/newview/skins/default/xui/en/widgets/accordion.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/accordion_tab.xml b/indra/newview/skins/default/xui/en/widgets/accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/avatar_icon.xml b/indra/newview/skins/default/xui/en/widgets/avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/avatar_list_item.xml b/indra/newview/skins/default/xui/en/widgets/avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/badge.xml b/indra/newview/skins/default/xui/en/widgets/badge.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/bodyparts_list_item.xml b/indra/newview/skins/default/xui/en/widgets/bodyparts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/button.xml b/indra/newview/skins/default/xui/en/widgets/button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/chat_editor.xml b/indra/newview/skins/default/xui/en/widgets/chat_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/chat_history.xml b/indra/newview/skins/default/xui/en/widgets/chat_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/check_box.xml b/indra/newview/skins/default/xui/en/widgets/check_box.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_offer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_panel.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/chiclet_script.xml b/indra/newview/skins/default/xui/en/widgets/chiclet_script.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/clothing_list_item.xml b/indra/newview/skins/default/xui/en/widgets/clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/color_swatch.xml b/indra/newview/skins/default/xui/en/widgets/color_swatch.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/combo_box.xml b/indra/newview/skins/default/xui/en/widgets/combo_box.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/context_menu.xml b/indra/newview/skins/default/xui/en/widgets/context_menu.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/conversation_view_session.xml b/indra/newview/skins/default/xui/en/widgets/conversation_view_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/en/widgets/deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/drop_down.xml b/indra/newview/skins/default/xui/en/widgets/drop_down.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/en/widgets/dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/expandable_text.xml b/indra/newview/skins/default/xui/en/widgets/expandable_text.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/filter_editor.xml b/indra/newview/skins/default/xui/en/widgets/filter_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/flat_list_view.xml b/indra/newview/skins/default/xui/en/widgets/flat_list_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/floater.xml b/indra/newview/skins/default/xui/en/widgets/floater.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/flyout_button.xml b/indra/newview/skins/default/xui/en/widgets/flyout_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/folder_view_item.xml b/indra/newview/skins/default/xui/en/widgets/folder_view_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/gesture_combo_list.xml b/indra/newview/skins/default/xui/en/widgets/gesture_combo_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/group_icon.xml b/indra/newview/skins/default/xui/en/widgets/group_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/hint_popup.xml b/indra/newview/skins/default/xui/en/widgets/hint_popup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/icon.xml b/indra/newview/skins/default/xui/en/widgets/icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/inbox_folder_view_folder.xml b/indra/newview/skins/default/xui/en/widgets/inbox_folder_view_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/inbox_folder_view_item.xml b/indra/newview/skins/default/xui/en/widgets/inbox_folder_view_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/inbox_inventory_panel.xml b/indra/newview/skins/default/xui/en/widgets/inbox_inventory_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/inspector.xml b/indra/newview/skins/default/xui/en/widgets/inspector.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/inventory_list_item.xml b/indra/newview/skins/default/xui/en/widgets/inventory_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/inventory_panel.xml b/indra/newview/skins/default/xui/en/widgets/inventory_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/joystick_rotate.xml b/indra/newview/skins/default/xui/en/widgets/joystick_rotate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/layout_stack.xml b/indra/newview/skins/default/xui/en/widgets/layout_stack.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/line_editor.xml b/indra/newview/skins/default/xui/en/widgets/line_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/list_view.xml b/indra/newview/skins/default/xui/en/widgets/list_view.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/loading_indicator.xml b/indra/newview/skins/default/xui/en/widgets/loading_indicator.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/location_input.xml b/indra/newview/skins/default/xui/en/widgets/location_input.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu.xml b/indra/newview/skins/default/xui/en/widgets/menu.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu_bar.xml b/indra/newview/skins/default/xui/en/widgets/menu_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu_item.xml b/indra/newview/skins/default/xui/en/widgets/menu_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu_item_call.xml b/indra/newview/skins/default/xui/en/widgets/menu_item_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu_item_check.xml b/indra/newview/skins/default/xui/en/widgets/menu_item_check.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu_item_separator.xml b/indra/newview/skins/default/xui/en/widgets/menu_item_separator.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/menu_item_tear_off.xml b/indra/newview/skins/default/xui/en/widgets/menu_item_tear_off.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/multi_slider.xml b/indra/newview/skins/default/xui/en/widgets/multi_slider.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/multi_slider_bar.xml b/indra/newview/skins/default/xui/en/widgets/multi_slider_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/name_editor.xml b/indra/newview/skins/default/xui/en/widgets/name_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/name_list.xml b/indra/newview/skins/default/xui/en/widgets/name_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/output_monitor.xml b/indra/newview/skins/default/xui/en/widgets/output_monitor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/panel.xml b/indra/newview/skins/default/xui/en/widgets/panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/panel_camera_item.xml b/indra/newview/skins/default/xui/en/widgets/panel_camera_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/progress_bar.xml b/indra/newview/skins/default/xui/en/widgets/progress_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/radio_group.xml b/indra/newview/skins/default/xui/en/widgets/radio_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/radio_item.xml b/indra/newview/skins/default/xui/en/widgets/radio_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/scroll_bar.xml b/indra/newview/skins/default/xui/en/widgets/scroll_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/scroll_column_header.xml b/indra/newview/skins/default/xui/en/widgets/scroll_column_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/scroll_container.xml b/indra/newview/skins/default/xui/en/widgets/scroll_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/scroll_list.xml b/indra/newview/skins/default/xui/en/widgets/scroll_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/scrolling_panel_list.xml b/indra/newview/skins/default/xui/en/widgets/scrolling_panel_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/search_combo_box.xml b/indra/newview/skins/default/xui/en/widgets/search_combo_box.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/search_editor.xml b/indra/newview/skins/default/xui/en/widgets/search_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/side_tray.xml b/indra/newview/skins/default/xui/en/widgets/side_tray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/sidetray_tab.xml b/indra/newview/skins/default/xui/en/widgets/sidetray_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/simple_text_editor.xml b/indra/newview/skins/default/xui/en/widgets/simple_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/slider.xml b/indra/newview/skins/default/xui/en/widgets/slider.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/slider_bar.xml b/indra/newview/skins/default/xui/en/widgets/slider_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/spinner.xml b/indra/newview/skins/default/xui/en/widgets/spinner.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/split_button.xml b/indra/newview/skins/default/xui/en/widgets/split_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/tab_container.xml b/indra/newview/skins/default/xui/en/widgets/tab_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/talk_button.xml b/indra/newview/skins/default/xui/en/widgets/talk_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/teleport_history_menu_item.xml b/indra/newview/skins/default/xui/en/widgets/teleport_history_menu_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/text.xml b/indra/newview/skins/default/xui/en/widgets/text.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/text_editor.xml b/indra/newview/skins/default/xui/en/widgets/text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/textbase.xml b/indra/newview/skins/default/xui/en/widgets/textbase.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/texture_picker.xml b/indra/newview/skins/default/xui/en/widgets/texture_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/time.xml b/indra/newview/skins/default/xui/en/widgets/time.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/toggleable_menu.xml b/indra/newview/skins/default/xui/en/widgets/toggleable_menu.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/tool_tip.xml b/indra/newview/skins/default/xui/en/widgets/tool_tip.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/toolbar.xml b/indra/newview/skins/default/xui/en/widgets/toolbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/ui_ctrl.xml b/indra/newview/skins/default/xui/en/widgets/ui_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/view_border.xml b/indra/newview/skins/default/xui/en/widgets/view_border.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/web_browser.xml b/indra/newview/skins/default/xui/en/widgets/web_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/widgets/window_shade.xml b/indra/newview/skins/default/xui/en/widgets/window_shade.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/en/xui_version.xml b/indra/newview/skins/default/xui/en/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_about.xml b/indra/newview/skins/default/xui/es/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_about_land.xml b/indra/newview/skins/default/xui/es/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_activeim.xml b/indra/newview/skins/default/xui/es/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_auction.xml b/indra/newview/skins/default/xui/es/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_autoreplace.xml b/indra/newview/skins/default/xui/es/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_avatar.xml b/indra/newview/skins/default/xui/es/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_avatar_picker.xml b/indra/newview/skins/default/xui/es/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_avatar_textures.xml b/indra/newview/skins/default/xui/es/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_beacons.xml b/indra/newview/skins/default/xui/es/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_build_options.xml b/indra/newview/skins/default/xui/es/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_bulk_perms.xml b/indra/newview/skins/default/xui/es/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_bumps.xml b/indra/newview/skins/default/xui/es/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_buy_contents.xml b/indra/newview/skins/default/xui/es/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_buy_currency.xml b/indra/newview/skins/default/xui/es/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/es/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_buy_land.xml b/indra/newview/skins/default/xui/es/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_buy_object.xml b/indra/newview/skins/default/xui/es/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_camera.xml b/indra/newview/skins/default/xui/es/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_chat_bar.xml b/indra/newview/skins/default/xui/es/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_choose_group.xml b/indra/newview/skins/default/xui/es/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_color_picker.xml b/indra/newview/skins/default/xui/es/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_critical.xml b/indra/newview/skins/default/xui/es/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/es/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_destinations.xml b/indra/newview/skins/default/xui/es/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_display_name.xml b/indra/newview/skins/default/xui/es/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/es/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/es/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/es/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_environment_settings.xml b/indra/newview/skins/default/xui/es/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_event.xml b/indra/newview/skins/default/xui/es/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_fast_timers.xml b/indra/newview/skins/default/xui/es/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_font_test.xml b/indra/newview/skins/default/xui/es/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_gesture.xml b/indra/newview/skins/default/xui/es/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_god_tools.xml b/indra/newview/skins/default/xui/es/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_hardware_settings.xml b/indra/newview/skins/default/xui/es/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_help_browser.xml b/indra/newview/skins/default/xui/es/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_how_to.xml b/indra/newview/skins/default/xui/es/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_hud.xml b/indra/newview/skins/default/xui/es/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_im_container.xml b/indra/newview/skins/default/xui/es/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_im_session.xml b/indra/newview/skins/default/xui/es/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_image_preview.xml b/indra/newview/skins/default/xui/es/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_import_collada.xml b/indra/newview/skins/default/xui/es/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_incoming_call.xml b/indra/newview/skins/default/xui/es/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_inspect.xml b/indra/newview/skins/default/xui/es/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/es/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_joystick.xml b/indra/newview/skins/default/xui/es/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_lagmeter.xml b/indra/newview/skins/default/xui/es/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_land_holdings.xml b/indra/newview/skins/default/xui/es/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/es/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_lsl_guide.xml b/indra/newview/skins/default/xui/es/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_map.xml b/indra/newview/skins/default/xui/es/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_media_browser.xml b/indra/newview/skins/default/xui/es/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_media_settings.xml b/indra/newview/skins/default/xui/es/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_mem_leaking.xml b/indra/newview/skins/default/xui/es/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/es/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_model_preview.xml b/indra/newview/skins/default/xui/es/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_moveview.xml b/indra/newview/skins/default/xui/es/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_mute_object.xml b/indra/newview/skins/default/xui/es/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_my_appearance.xml b/indra/newview/skins/default/xui/es/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_my_inventory.xml b/indra/newview/skins/default/xui/es/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_object_weights.xml b/indra/newview/skins/default/xui/es/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_openobject.xml b/indra/newview/skins/default/xui/es/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/es/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_outgoing_call.xml b/indra/newview/skins/default/xui/es/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/es/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/es/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/es/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_pay.xml b/indra/newview/skins/default/xui/es/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_pay_object.xml b/indra/newview/skins/default/xui/es/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_people.xml b/indra/newview/skins/default/xui/es/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_perm_prefs.xml b/indra/newview/skins/default/xui/es/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_picks.xml b/indra/newview/skins/default/xui/es/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_places.xml b/indra/newview/skins/default/xui/es/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_post_process.xml b/indra/newview/skins/default/xui/es/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preferences.xml b/indra/newview/skins/default/xui/es/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/es/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preview_animation.xml b/indra/newview/skins/default/xui/es/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preview_gesture.xml b/indra/newview/skins/default/xui/es/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preview_notecard.xml b/indra/newview/skins/default/xui/es/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preview_sound.xml b/indra/newview/skins/default/xui/es/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_preview_texture.xml b/indra/newview/skins/default/xui/es/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_price_for_listing.xml b/indra/newview/skins/default/xui/es/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_publish_classified.xml b/indra/newview/skins/default/xui/es/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_region_debug_console.xml b/indra/newview/skins/default/xui/es/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_region_info.xml b/indra/newview/skins/default/xui/es/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_report_abuse.xml b/indra/newview/skins/default/xui/es/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_script_debug.xml b/indra/newview/skins/default/xui/es/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/es/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_script_limits.xml b/indra/newview/skins/default/xui/es/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_script_preview.xml b/indra/newview/skins/default/xui/es/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_script_queue.xml b/indra/newview/skins/default/xui/es/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_script_search.xml b/indra/newview/skins/default/xui/es/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_search.xml b/indra/newview/skins/default/xui/es/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_select_key.xml b/indra/newview/skins/default/xui/es/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_sell_land.xml b/indra/newview/skins/default/xui/es/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_settings_debug.xml b/indra/newview/skins/default/xui/es/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_snapshot.xml b/indra/newview/skins/default/xui/es/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_sound_devices.xml b/indra/newview/skins/default/xui/es/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_sound_preview.xml b/indra/newview/skins/default/xui/es/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_spellcheck.xml b/indra/newview/skins/default/xui/es/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/es/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_stats.xml b/indra/newview/skins/default/xui/es/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_sys_well.xml b/indra/newview/skins/default/xui/es/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_telehub.xml b/indra/newview/skins/default/xui/es/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/es/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/es/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/es/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_tools.xml b/indra/newview/skins/default/xui/es/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_top_objects.xml b/indra/newview/skins/default/xui/es/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_tos.xml b/indra/newview/skins/default/xui/es/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_toybox.xml b/indra/newview/skins/default/xui/es/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_translation_settings.xml b/indra/newview/skins/default/xui/es/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_url_entry.xml b/indra/newview/skins/default/xui/es/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_voice_controls.xml b/indra/newview/skins/default/xui/es/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_voice_effect.xml b/indra/newview/skins/default/xui/es/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_web_content.xml b/indra/newview/skins/default/xui/es/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/es/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_window_size.xml b/indra/newview/skins/default/xui/es/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/floater_world_map.xml b/indra/newview/skins/default/xui/es/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/inspect_avatar.xml b/indra/newview/skins/default/xui/es/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/inspect_group.xml b/indra/newview/skins/default/xui/es/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/inspect_object.xml b/indra/newview/skins/default/xui/es/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/inspect_remote_object.xml b/indra/newview/skins/default/xui/es/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/language_settings.xml b/indra/newview/skins/default/xui/es/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/es/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_attachment_other.xml b/indra/newview/skins/default/xui/es/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_attachment_self.xml b/indra/newview/skins/default/xui/es/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_avatar_icon.xml b/indra/newview/skins/default/xui/es/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_avatar_other.xml b/indra/newview/skins/default/xui/es/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_avatar_self.xml b/indra/newview/skins/default/xui/es/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_cof_attachment.xml b/indra/newview/skins/default/xui/es/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_cof_body_part.xml b/indra/newview/skins/default/xui/es/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_cof_clothing.xml b/indra/newview/skins/default/xui/es/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_cof_gear.xml b/indra/newview/skins/default/xui/es/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_edit.xml b/indra/newview/skins/default/xui/es/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_favorites.xml b/indra/newview/skins/default/xui/es/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_gesture_gear.xml b/indra/newview/skins/default/xui/es/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_group_plus.xml b/indra/newview/skins/default/xui/es/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_hide_navbar.xml b/indra/newview/skins/default/xui/es/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/es/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/es/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/es/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inventory.xml b/indra/newview/skins/default/xui/es/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inventory_add.xml b/indra/newview/skins/default/xui/es/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/es/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_land.xml b/indra/newview/skins/default/xui/es/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_landmark.xml b/indra/newview/skins/default/xui/es/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_login.xml b/indra/newview/skins/default/xui/es/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_media_ctrl.xml b/indra/newview/skins/default/xui/es/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_mini_map.xml b/indra/newview/skins/default/xui/es/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/es/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_navbar.xml b/indra/newview/skins/default/xui/es/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_nearby_chat.xml b/indra/newview/skins/default/xui/es/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_notification_well_button.xml b/indra/newview/skins/default/xui/es/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_object.xml b/indra/newview/skins/default/xui/es/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_object_icon.xml b/indra/newview/skins/default/xui/es/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_outfit_gear.xml b/indra/newview/skins/default/xui/es/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_outfit_tab.xml b/indra/newview/skins/default/xui/es/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_participant_list.xml b/indra/newview/skins/default/xui/es/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_groups.xml b/indra/newview/skins/default/xui/es/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_nearby.xml b/indra/newview/skins/default/xui/es/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/es/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_picks.xml b/indra/newview/skins/default/xui/es/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_picks_plus.xml b/indra/newview/skins/default/xui/es/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_place.xml b/indra/newview/skins/default/xui/es/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_place_add_button.xml b/indra/newview/skins/default/xui/es/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/es/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/es/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_profile_overflow.xml b/indra/newview/skins/default/xui/es/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_save_outfit.xml b/indra/newview/skins/default/xui/es/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_script_chiclet.xml b/indra/newview/skins/default/xui/es/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_slurl.xml b/indra/newview/skins/default/xui/es/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/es/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/es/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/es/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_text_editor.xml b/indra/newview/skins/default/xui/es/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_toolbars.xml b/indra/newview/skins/default/xui/es/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_topinfobar.xml b/indra/newview/skins/default/xui/es/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_agent.xml b/indra/newview/skins/default/xui/es/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_group.xml b/indra/newview/skins/default/xui/es/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_http.xml b/indra/newview/skins/default/xui/es/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_inventory.xml b/indra/newview/skins/default/xui/es/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_map.xml b/indra/newview/skins/default/xui/es/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_objectim.xml b/indra/newview/skins/default/xui/es/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_parcel.xml b/indra/newview/skins/default/xui/es/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_slapp.xml b/indra/newview/skins/default/xui/es/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_slurl.xml b/indra/newview/skins/default/xui/es/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_url_teleport.xml b/indra/newview/skins/default/xui/es/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_viewer.xml b/indra/newview/skins/default/xui/es/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/es/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_wearing_gear.xml b/indra/newview/skins/default/xui/es/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/menu_wearing_tab.xml b/indra/newview/skins/default/xui/es/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/mime_types.xml b/indra/newview/skins/default/xui/es/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/mime_types_linux.xml b/indra/newview/skins/default/xui/es/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/mime_types_mac.xml b/indra/newview/skins/default/xui/es/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/notifications.xml b/indra/newview/skins/default/xui/es/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/es/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_active_object_row.xml b/indra/newview/skins/default/xui/es/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/es/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/es/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/es/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/es/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/es/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/es/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/es/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_classified_info.xml b/indra/newview/skins/default/xui/es/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/es/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/es/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_cof_wearables.xml b/indra/newview/skins/default/xui/es/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/es/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/es/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_alpha.xml b/indra/newview/skins/default/xui/es/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_classified.xml b/indra/newview/skins/default/xui/es/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_eyes.xml b/indra/newview/skins/default/xui/es/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_gloves.xml b/indra/newview/skins/default/xui/es/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_hair.xml b/indra/newview/skins/default/xui/es/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_jacket.xml b/indra/newview/skins/default/xui/es/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_pants.xml b/indra/newview/skins/default/xui/es/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_physics.xml b/indra/newview/skins/default/xui/es/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_pick.xml b/indra/newview/skins/default/xui/es/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_profile.xml b/indra/newview/skins/default/xui/es/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_shape.xml b/indra/newview/skins/default/xui/es/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_shirt.xml b/indra/newview/skins/default/xui/es/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_shoes.xml b/indra/newview/skins/default/xui/es/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_skin.xml b/indra/newview/skins/default/xui/es/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_skirt.xml b/indra/newview/skins/default/xui/es/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_socks.xml b/indra/newview/skins/default/xui/es/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/es/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_underpants.xml b/indra/newview/skins/default/xui/es/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/es/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_edit_wearable.xml b/indra/newview/skins/default/xui/es/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_control_panel.xml b/indra/newview/skins/default/xui/es/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_general.xml b/indra/newview/skins/default/xui/es/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/es/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_invite.xml b/indra/newview/skins/default/xui/es/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_land_money.xml b/indra/newview/skins/default/xui/es/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_list_item.xml b/indra/newview/skins/default/xui/es/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_notices.xml b/indra/newview/skins/default/xui/es/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_notify.xml b/indra/newview/skins/default/xui/es/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_group_roles.xml b/indra/newview/skins/default/xui/es/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_im_control_panel.xml b/indra/newview/skins/default/xui/es/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_inventory_item.xml b/indra/newview/skins/default/xui/es/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_landmark_info.xml b/indra/newview/skins/default/xui/es/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_landmarks.xml b/indra/newview/skins/default/xui/es/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_login.xml b/indra/newview/skins/default/xui/es/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_main_inventory.xml b/indra/newview/skins/default/xui/es/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_me.xml b/indra/newview/skins/default/xui/es/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_media_settings_general.xml b/indra/newview/skins/default/xui/es/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/es/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_media_settings_security.xml b/indra/newview/skins/default/xui/es/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_navigation_bar.xml b/indra/newview/skins/default/xui/es/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_nearby_chat.xml b/indra/newview/skins/default/xui/es/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/es/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_nearby_media.xml b/indra/newview/skins/default/xui/es/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_notify_textbox.xml b/indra/newview/skins/default/xui/es/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_online_status_toast.xml b/indra/newview/skins/default/xui/es/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/es/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_outfit_edit.xml b/indra/newview/skins/default/xui/es/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/es/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/es/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_outfits_list.xml b/indra/newview/skins/default/xui/es/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/es/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_people.xml b/indra/newview/skins/default/xui/es/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_pick_info.xml b/indra/newview/skins/default/xui/es/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_picks.xml b/indra/newview/skins/default/xui/es/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_place_profile.xml b/indra/newview/skins/default/xui/es/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_places.xml b/indra/newview/skins/default/xui/es/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_postcard_message.xml b/indra/newview/skins/default/xui/es/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_postcard_settings.xml b/indra/newview/skins/default/xui/es/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/es/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/es/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_chat.xml b/indra/newview/skins/default/xui/es/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_colors.xml b/indra/newview/skins/default/xui/es/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_general.xml b/indra/newview/skins/default/xui/es/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_move.xml b/indra/newview/skins/default/xui/es/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/es/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_setup.xml b/indra/newview/skins/default/xui/es/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_preferences_sound.xml b/indra/newview/skins/default/xui/es/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/es/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_region_covenant.xml b/indra/newview/skins/default/xui/es/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_region_debug.xml b/indra/newview/skins/default/xui/es/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_region_environment.xml b/indra/newview/skins/default/xui/es/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_region_estate.xml b/indra/newview/skins/default/xui/es/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_region_general.xml b/indra/newview/skins/default/xui/es/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_region_terrain.xml b/indra/newview/skins/default/xui/es/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_script_ed.xml b/indra/newview/skins/default/xui/es/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/es/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/es/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_script_question_toast.xml b/indra/newview/skins/default/xui/es/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_scrolling_param.xml b/indra/newview/skins/default/xui/es/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/es/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/es/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/es/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_snapshot_local.xml b/indra/newview/skins/default/xui/es/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_snapshot_options.xml b/indra/newview/skins/default/xui/es/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/es/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/es/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_sound_devices.xml b/indra/newview/skins/default/xui/es/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/es/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_status_bar.xml b/indra/newview/skins/default/xui/es/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_teleport_history.xml b/indra/newview/skins/default/xui/es/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/es/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_voice_effect.xml b/indra/newview/skins/default/xui/es/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/es/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/panel_world_map.xml b/indra/newview/skins/default/xui/es/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/role_actions.xml b/indra/newview/skins/default/xui/es/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/sidepanel_appearance.xml b/indra/newview/skins/default/xui/es/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/sidepanel_inventory.xml b/indra/newview/skins/default/xui/es/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/sidepanel_item_info.xml b/indra/newview/skins/default/xui/es/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/sidepanel_task_info.xml b/indra/newview/skins/default/xui/es/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/strings.xml b/indra/newview/skins/default/xui/es/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/teleport_strings.xml b/indra/newview/skins/default/xui/es/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/es/xui_version.xml b/indra/newview/skins/default/xui/es/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_about.xml b/indra/newview/skins/default/xui/fr/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_about_land.xml b/indra/newview/skins/default/xui/fr/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_activeim.xml b/indra/newview/skins/default/xui/fr/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/fr/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/fr/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_auction.xml b/indra/newview/skins/default/xui/fr/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_autoreplace.xml b/indra/newview/skins/default/xui/fr/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_avatar.xml b/indra/newview/skins/default/xui/fr/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_avatar_picker.xml b/indra/newview/skins/default/xui/fr/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_avatar_textures.xml b/indra/newview/skins/default/xui/fr/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_beacons.xml b/indra/newview/skins/default/xui/fr/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_build_options.xml b/indra/newview/skins/default/xui/fr/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_bulk_perms.xml b/indra/newview/skins/default/xui/fr/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_bumps.xml b/indra/newview/skins/default/xui/fr/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_buy_contents.xml b/indra/newview/skins/default/xui/fr/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_buy_currency.xml b/indra/newview/skins/default/xui/fr/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/fr/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_buy_land.xml b/indra/newview/skins/default/xui/fr/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_buy_object.xml b/indra/newview/skins/default/xui/fr/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_camera.xml b/indra/newview/skins/default/xui/fr/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_chat_bar.xml b/indra/newview/skins/default/xui/fr/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_choose_group.xml b/indra/newview/skins/default/xui/fr/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_color_picker.xml b/indra/newview/skins/default/xui/fr/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_critical.xml b/indra/newview/skins/default/xui/fr/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/fr/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_destinations.xml b/indra/newview/skins/default/xui/fr/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_display_name.xml b/indra/newview/skins/default/xui/fr/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/fr/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/fr/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/fr/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_environment_settings.xml b/indra/newview/skins/default/xui/fr/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_event.xml b/indra/newview/skins/default/xui/fr/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_fast_timers.xml b/indra/newview/skins/default/xui/fr/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_font_test.xml b/indra/newview/skins/default/xui/fr/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_gesture.xml b/indra/newview/skins/default/xui/fr/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_god_tools.xml b/indra/newview/skins/default/xui/fr/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_hardware_settings.xml b/indra/newview/skins/default/xui/fr/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_help_browser.xml b/indra/newview/skins/default/xui/fr/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_how_to.xml b/indra/newview/skins/default/xui/fr/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_hud.xml b/indra/newview/skins/default/xui/fr/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_im_container.xml b/indra/newview/skins/default/xui/fr/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_im_session.xml b/indra/newview/skins/default/xui/fr/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_image_preview.xml b/indra/newview/skins/default/xui/fr/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_import_collada.xml b/indra/newview/skins/default/xui/fr/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_incoming_call.xml b/indra/newview/skins/default/xui/fr/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_inspect.xml b/indra/newview/skins/default/xui/fr/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/fr/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/fr/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_joystick.xml b/indra/newview/skins/default/xui/fr/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_lagmeter.xml b/indra/newview/skins/default/xui/fr/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_land_holdings.xml b/indra/newview/skins/default/xui/fr/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_lsl_guide.xml b/indra/newview/skins/default/xui/fr/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_map.xml b/indra/newview/skins/default/xui/fr/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_media_browser.xml b/indra/newview/skins/default/xui/fr/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_media_settings.xml b/indra/newview/skins/default/xui/fr/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_mem_leaking.xml b/indra/newview/skins/default/xui/fr/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/fr/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_model_preview.xml b/indra/newview/skins/default/xui/fr/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_moveview.xml b/indra/newview/skins/default/xui/fr/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_mute_object.xml b/indra/newview/skins/default/xui/fr/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_my_appearance.xml b/indra/newview/skins/default/xui/fr/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_my_inventory.xml b/indra/newview/skins/default/xui/fr/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_notification.xml b/indra/newview/skins/default/xui/fr/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_notifications_console.xml b/indra/newview/skins/default/xui/fr/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_object_weights.xml b/indra/newview/skins/default/xui/fr/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_openobject.xml b/indra/newview/skins/default/xui/fr/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_outgoing_call.xml b/indra/newview/skins/default/xui/fr/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/fr/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/fr/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/fr/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_pay.xml b/indra/newview/skins/default/xui/fr/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_pay_object.xml b/indra/newview/skins/default/xui/fr/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_people.xml b/indra/newview/skins/default/xui/fr/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_perm_prefs.xml b/indra/newview/skins/default/xui/fr/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_picks.xml b/indra/newview/skins/default/xui/fr/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_places.xml b/indra/newview/skins/default/xui/fr/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_post_process.xml b/indra/newview/skins/default/xui/fr/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preferences.xml b/indra/newview/skins/default/xui/fr/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preview_animation.xml b/indra/newview/skins/default/xui/fr/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preview_gesture.xml b/indra/newview/skins/default/xui/fr/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preview_notecard.xml b/indra/newview/skins/default/xui/fr/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preview_sound.xml b/indra/newview/skins/default/xui/fr/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_preview_texture.xml b/indra/newview/skins/default/xui/fr/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_price_for_listing.xml b/indra/newview/skins/default/xui/fr/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_publish_classified.xml b/indra/newview/skins/default/xui/fr/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_region_debug_console.xml b/indra/newview/skins/default/xui/fr/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_region_info.xml b/indra/newview/skins/default/xui/fr/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_report_abuse.xml b/indra/newview/skins/default/xui/fr/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_script_debug.xml b/indra/newview/skins/default/xui/fr/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/fr/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_script_limits.xml b/indra/newview/skins/default/xui/fr/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_script_preview.xml b/indra/newview/skins/default/xui/fr/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_script_queue.xml b/indra/newview/skins/default/xui/fr/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_script_search.xml b/indra/newview/skins/default/xui/fr/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_search.xml b/indra/newview/skins/default/xui/fr/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_select_key.xml b/indra/newview/skins/default/xui/fr/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_sell_land.xml b/indra/newview/skins/default/xui/fr/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_settings_debug.xml b/indra/newview/skins/default/xui/fr/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_snapshot.xml b/indra/newview/skins/default/xui/fr/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_sound_devices.xml b/indra/newview/skins/default/xui/fr/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_sound_preview.xml b/indra/newview/skins/default/xui/fr/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_spellcheck.xml b/indra/newview/skins/default/xui/fr/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/fr/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_stats.xml b/indra/newview/skins/default/xui/fr/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_sys_well.xml b/indra/newview/skins/default/xui/fr/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_telehub.xml b/indra/newview/skins/default/xui/fr/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/fr/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/fr/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/fr/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/fr/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_tools.xml b/indra/newview/skins/default/xui/fr/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_top_objects.xml b/indra/newview/skins/default/xui/fr/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_tos.xml b/indra/newview/skins/default/xui/fr/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_toybox.xml b/indra/newview/skins/default/xui/fr/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_translation_settings.xml b/indra/newview/skins/default/xui/fr/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_url_entry.xml b/indra/newview/skins/default/xui/fr/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_voice_controls.xml b/indra/newview/skins/default/xui/fr/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_voice_effect.xml b/indra/newview/skins/default/xui/fr/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_web_content.xml b/indra/newview/skins/default/xui/fr/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/fr/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_window_size.xml b/indra/newview/skins/default/xui/fr/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/floater_world_map.xml b/indra/newview/skins/default/xui/fr/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/fonts.xml b/indra/newview/skins/default/xui/fr/fonts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/inspect_avatar.xml b/indra/newview/skins/default/xui/fr/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/inspect_group.xml b/indra/newview/skins/default/xui/fr/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/inspect_object.xml b/indra/newview/skins/default/xui/fr/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/inspect_remote_object.xml b/indra/newview/skins/default/xui/fr/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/language_settings.xml b/indra/newview/skins/default/xui/fr/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/fr/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_attachment_other.xml b/indra/newview/skins/default/xui/fr/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_attachment_self.xml b/indra/newview/skins/default/xui/fr/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_avatar_icon.xml b/indra/newview/skins/default/xui/fr/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_avatar_other.xml b/indra/newview/skins/default/xui/fr/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_avatar_self.xml b/indra/newview/skins/default/xui/fr/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_cof_attachment.xml b/indra/newview/skins/default/xui/fr/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_cof_body_part.xml b/indra/newview/skins/default/xui/fr/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_cof_clothing.xml b/indra/newview/skins/default/xui/fr/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_cof_gear.xml b/indra/newview/skins/default/xui/fr/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_edit.xml b/indra/newview/skins/default/xui/fr/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_favorites.xml b/indra/newview/skins/default/xui/fr/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_gesture_gear.xml b/indra/newview/skins/default/xui/fr/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_group_plus.xml b/indra/newview/skins/default/xui/fr/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_hide_navbar.xml b/indra/newview/skins/default/xui/fr/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/fr/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/fr/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/fr/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/fr/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/fr/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/fr/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/fr/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inventory.xml b/indra/newview/skins/default/xui/fr/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inventory_add.xml b/indra/newview/skins/default/xui/fr/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/fr/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_land.xml b/indra/newview/skins/default/xui/fr/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_landmark.xml b/indra/newview/skins/default/xui/fr/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_login.xml b/indra/newview/skins/default/xui/fr/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_media_ctrl.xml b/indra/newview/skins/default/xui/fr/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_mini_map.xml b/indra/newview/skins/default/xui/fr/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/fr/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_navbar.xml b/indra/newview/skins/default/xui/fr/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_nearby_chat.xml b/indra/newview/skins/default/xui/fr/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_notification_well_button.xml b/indra/newview/skins/default/xui/fr/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_object.xml b/indra/newview/skins/default/xui/fr/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_object_icon.xml b/indra/newview/skins/default/xui/fr/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_outfit_gear.xml b/indra/newview/skins/default/xui/fr/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_outfit_tab.xml b/indra/newview/skins/default/xui/fr/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_participant_list.xml b/indra/newview/skins/default/xui/fr/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/fr/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_groups.xml b/indra/newview/skins/default/xui/fr/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/fr/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_nearby.xml b/indra/newview/skins/default/xui/fr/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/fr/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/fr/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/fr/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_picks.xml b/indra/newview/skins/default/xui/fr/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_picks_plus.xml b/indra/newview/skins/default/xui/fr/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_place.xml b/indra/newview/skins/default/xui/fr/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_place_add_button.xml b/indra/newview/skins/default/xui/fr/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/fr/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/fr/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_profile_overflow.xml b/indra/newview/skins/default/xui/fr/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_save_outfit.xml b/indra/newview/skins/default/xui/fr/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_script_chiclet.xml b/indra/newview/skins/default/xui/fr/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_slurl.xml b/indra/newview/skins/default/xui/fr/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/fr/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/fr/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/fr/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_text_editor.xml b/indra/newview/skins/default/xui/fr/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_toolbars.xml b/indra/newview/skins/default/xui/fr/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_topinfobar.xml b/indra/newview/skins/default/xui/fr/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_agent.xml b/indra/newview/skins/default/xui/fr/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_group.xml b/indra/newview/skins/default/xui/fr/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_http.xml b/indra/newview/skins/default/xui/fr/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_inventory.xml b/indra/newview/skins/default/xui/fr/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_map.xml b/indra/newview/skins/default/xui/fr/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_objectim.xml b/indra/newview/skins/default/xui/fr/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_parcel.xml b/indra/newview/skins/default/xui/fr/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_slapp.xml b/indra/newview/skins/default/xui/fr/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_slurl.xml b/indra/newview/skins/default/xui/fr/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_url_teleport.xml b/indra/newview/skins/default/xui/fr/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_viewer.xml b/indra/newview/skins/default/xui/fr/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/fr/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_wearing_gear.xml b/indra/newview/skins/default/xui/fr/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/menu_wearing_tab.xml b/indra/newview/skins/default/xui/fr/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/mime_types.xml b/indra/newview/skins/default/xui/fr/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/mime_types_linux.xml b/indra/newview/skins/default/xui/fr/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/mime_types_mac.xml b/indra/newview/skins/default/xui/fr/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/notifications.xml b/indra/newview/skins/default/xui/fr/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/fr/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_active_object_row.xml b/indra/newview/skins/default/xui/fr/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/fr/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/fr/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_avatar_tag.xml b/indra/newview/skins/default/xui/fr/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/fr/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/fr/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/fr/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/fr/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_chat_header.xml b/indra/newview/skins/default/xui/fr/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/fr/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_classified_info.xml b/indra/newview/skins/default/xui/fr/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/fr/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/fr/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_cof_wearables.xml b/indra/newview/skins/default/xui/fr/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/fr/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/fr/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_alpha.xml b/indra/newview/skins/default/xui/fr/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_classified.xml b/indra/newview/skins/default/xui/fr/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_eyes.xml b/indra/newview/skins/default/xui/fr/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_gloves.xml b/indra/newview/skins/default/xui/fr/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_hair.xml b/indra/newview/skins/default/xui/fr/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_jacket.xml b/indra/newview/skins/default/xui/fr/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_pants.xml b/indra/newview/skins/default/xui/fr/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_physics.xml b/indra/newview/skins/default/xui/fr/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_pick.xml b/indra/newview/skins/default/xui/fr/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_profile.xml b/indra/newview/skins/default/xui/fr/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_shape.xml b/indra/newview/skins/default/xui/fr/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_shirt.xml b/indra/newview/skins/default/xui/fr/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_shoes.xml b/indra/newview/skins/default/xui/fr/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_skin.xml b/indra/newview/skins/default/xui/fr/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_skirt.xml b/indra/newview/skins/default/xui/fr/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_socks.xml b/indra/newview/skins/default/xui/fr/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/fr/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_underpants.xml b/indra/newview/skins/default/xui/fr/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_edit_wearable.xml b/indra/newview/skins/default/xui/fr/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_control_panel.xml b/indra/newview/skins/default/xui/fr/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_general.xml b/indra/newview/skins/default/xui/fr/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_invite.xml b/indra/newview/skins/default/xui/fr/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_land_money.xml b/indra/newview/skins/default/xui/fr/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_list_item.xml b/indra/newview/skins/default/xui/fr/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_notices.xml b/indra/newview/skins/default/xui/fr/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_notify.xml b/indra/newview/skins/default/xui/fr/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_group_roles.xml b/indra/newview/skins/default/xui/fr/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_im_control_panel.xml b/indra/newview/skins/default/xui/fr/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_instant_message.xml b/indra/newview/skins/default/xui/fr/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_inventory_item.xml b/indra/newview/skins/default/xui/fr/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_landmark_info.xml b/indra/newview/skins/default/xui/fr/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_landmarks.xml b/indra/newview/skins/default/xui/fr/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_login.xml b/indra/newview/skins/default/xui/fr/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_main_inventory.xml b/indra/newview/skins/default/xui/fr/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_me.xml b/indra/newview/skins/default/xui/fr/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_media_settings_general.xml b/indra/newview/skins/default/xui/fr/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/fr/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_media_settings_security.xml b/indra/newview/skins/default/xui/fr/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_navigation_bar.xml b/indra/newview/skins/default/xui/fr/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_nearby_chat.xml b/indra/newview/skins/default/xui/fr/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/fr/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_nearby_media.xml b/indra/newview/skins/default/xui/fr/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_notifications_channel.xml b/indra/newview/skins/default/xui/fr/panel_notifications_channel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_notify_textbox.xml b/indra/newview/skins/default/xui/fr/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_online_status_toast.xml b/indra/newview/skins/default/xui/fr/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_outfit_edit.xml b/indra/newview/skins/default/xui/fr/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/fr/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_outfits_list.xml b/indra/newview/skins/default/xui/fr/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/fr/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_people.xml b/indra/newview/skins/default/xui/fr/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_pick_info.xml b/indra/newview/skins/default/xui/fr/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_picks.xml b/indra/newview/skins/default/xui/fr/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_place_profile.xml b/indra/newview/skins/default/xui/fr/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_places.xml b/indra/newview/skins/default/xui/fr/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_postcard_message.xml b/indra/newview/skins/default/xui/fr/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_postcard_settings.xml b/indra/newview/skins/default/xui/fr/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml b/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_colors.xml b/indra/newview/skins/default/xui/fr/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_general.xml b/indra/newview/skins/default/xui/fr/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_move.xml b/indra/newview/skins/default/xui/fr/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml b/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_sound.xml b/indra/newview/skins/default/xui/fr/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/fr/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_region_covenant.xml b/indra/newview/skins/default/xui/fr/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_region_debug.xml b/indra/newview/skins/default/xui/fr/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_region_environment.xml b/indra/newview/skins/default/xui/fr/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_region_estate.xml b/indra/newview/skins/default/xui/fr/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_region_general.xml b/indra/newview/skins/default/xui/fr/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_region_terrain.xml b/indra/newview/skins/default/xui/fr/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_script_ed.xml b/indra/newview/skins/default/xui/fr/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_script_question_toast.xml b/indra/newview/skins/default/xui/fr/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_scrolling_param.xml b/indra/newview/skins/default/xui/fr/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/fr/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/fr/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_sidetray_home_tab.xml b/indra/newview/skins/default/xui/fr/panel_sidetray_home_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/fr/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_snapshot_local.xml b/indra/newview/skins/default/xui/fr/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_snapshot_options.xml b/indra/newview/skins/default/xui/fr/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/fr/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/fr/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_sound_devices.xml b/indra/newview/skins/default/xui/fr/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/fr/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_status_bar.xml b/indra/newview/skins/default/xui/fr/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_sys_well_item.xml b/indra/newview/skins/default/xui/fr/panel_sys_well_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_teleport_history.xml b/indra/newview/skins/default/xui/fr/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/fr/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_voice_effect.xml b/indra/newview/skins/default/xui/fr/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/fr/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/panel_world_map.xml b/indra/newview/skins/default/xui/fr/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/role_actions.xml b/indra/newview/skins/default/xui/fr/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/sidepanel_appearance.xml b/indra/newview/skins/default/xui/fr/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/sidepanel_inventory.xml b/indra/newview/skins/default/xui/fr/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/sidepanel_item_info.xml b/indra/newview/skins/default/xui/fr/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/sidepanel_task_info.xml b/indra/newview/skins/default/xui/fr/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/strings.xml b/indra/newview/skins/default/xui/fr/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/teleport_strings.xml b/indra/newview/skins/default/xui/fr/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/fr/xui_version.xml b/indra/newview/skins/default/xui/fr/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_about.xml b/indra/newview/skins/default/xui/it/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_about_land.xml b/indra/newview/skins/default/xui/it/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_activeim.xml b/indra/newview/skins/default/xui/it/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/it/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/it/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_auction.xml b/indra/newview/skins/default/xui/it/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_autoreplace.xml b/indra/newview/skins/default/xui/it/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_avatar.xml b/indra/newview/skins/default/xui/it/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_avatar_picker.xml b/indra/newview/skins/default/xui/it/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_avatar_textures.xml b/indra/newview/skins/default/xui/it/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_beacons.xml b/indra/newview/skins/default/xui/it/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_build_options.xml b/indra/newview/skins/default/xui/it/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_bulk_perms.xml b/indra/newview/skins/default/xui/it/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_bumps.xml b/indra/newview/skins/default/xui/it/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_buy_contents.xml b/indra/newview/skins/default/xui/it/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_buy_currency.xml b/indra/newview/skins/default/xui/it/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/it/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_buy_land.xml b/indra/newview/skins/default/xui/it/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_buy_object.xml b/indra/newview/skins/default/xui/it/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_camera.xml b/indra/newview/skins/default/xui/it/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_chat_bar.xml b/indra/newview/skins/default/xui/it/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_choose_group.xml b/indra/newview/skins/default/xui/it/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_color_picker.xml b/indra/newview/skins/default/xui/it/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_critical.xml b/indra/newview/skins/default/xui/it/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/it/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_destinations.xml b/indra/newview/skins/default/xui/it/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_display_name.xml b/indra/newview/skins/default/xui/it/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/it/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/it/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/it/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_environment_settings.xml b/indra/newview/skins/default/xui/it/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_event.xml b/indra/newview/skins/default/xui/it/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_fast_timers.xml b/indra/newview/skins/default/xui/it/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_font_test.xml b/indra/newview/skins/default/xui/it/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_gesture.xml b/indra/newview/skins/default/xui/it/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_god_tools.xml b/indra/newview/skins/default/xui/it/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_hardware_settings.xml b/indra/newview/skins/default/xui/it/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_help_browser.xml b/indra/newview/skins/default/xui/it/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_how_to.xml b/indra/newview/skins/default/xui/it/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_hud.xml b/indra/newview/skins/default/xui/it/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_im_container.xml b/indra/newview/skins/default/xui/it/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_im_session.xml b/indra/newview/skins/default/xui/it/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_image_preview.xml b/indra/newview/skins/default/xui/it/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_import_collada.xml b/indra/newview/skins/default/xui/it/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_incoming_call.xml b/indra/newview/skins/default/xui/it/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_inspect.xml b/indra/newview/skins/default/xui/it/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/it/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/it/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_joystick.xml b/indra/newview/skins/default/xui/it/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_lagmeter.xml b/indra/newview/skins/default/xui/it/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_land_holdings.xml b/indra/newview/skins/default/xui/it/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/it/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_lsl_guide.xml b/indra/newview/skins/default/xui/it/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_map.xml b/indra/newview/skins/default/xui/it/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_media_browser.xml b/indra/newview/skins/default/xui/it/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_media_settings.xml b/indra/newview/skins/default/xui/it/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_mem_leaking.xml b/indra/newview/skins/default/xui/it/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/it/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_model_preview.xml b/indra/newview/skins/default/xui/it/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_moveview.xml b/indra/newview/skins/default/xui/it/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_mute_object.xml b/indra/newview/skins/default/xui/it/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_my_appearance.xml b/indra/newview/skins/default/xui/it/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_my_inventory.xml b/indra/newview/skins/default/xui/it/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_object_weights.xml b/indra/newview/skins/default/xui/it/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_openobject.xml b/indra/newview/skins/default/xui/it/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/it/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_outgoing_call.xml b/indra/newview/skins/default/xui/it/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/it/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/it/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/it/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_pay.xml b/indra/newview/skins/default/xui/it/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_pay_object.xml b/indra/newview/skins/default/xui/it/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_people.xml b/indra/newview/skins/default/xui/it/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_perm_prefs.xml b/indra/newview/skins/default/xui/it/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_picks.xml b/indra/newview/skins/default/xui/it/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_places.xml b/indra/newview/skins/default/xui/it/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_post_process.xml b/indra/newview/skins/default/xui/it/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preferences.xml b/indra/newview/skins/default/xui/it/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/it/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preview_animation.xml b/indra/newview/skins/default/xui/it/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preview_gesture.xml b/indra/newview/skins/default/xui/it/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preview_notecard.xml b/indra/newview/skins/default/xui/it/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preview_sound.xml b/indra/newview/skins/default/xui/it/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_preview_texture.xml b/indra/newview/skins/default/xui/it/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_price_for_listing.xml b/indra/newview/skins/default/xui/it/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_publish_classified.xml b/indra/newview/skins/default/xui/it/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_region_debug_console.xml b/indra/newview/skins/default/xui/it/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_region_info.xml b/indra/newview/skins/default/xui/it/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_report_abuse.xml b/indra/newview/skins/default/xui/it/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_script_debug.xml b/indra/newview/skins/default/xui/it/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/it/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_script_limits.xml b/indra/newview/skins/default/xui/it/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_script_preview.xml b/indra/newview/skins/default/xui/it/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_script_queue.xml b/indra/newview/skins/default/xui/it/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_script_search.xml b/indra/newview/skins/default/xui/it/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_search.xml b/indra/newview/skins/default/xui/it/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_select_key.xml b/indra/newview/skins/default/xui/it/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_sell_land.xml b/indra/newview/skins/default/xui/it/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_settings_debug.xml b/indra/newview/skins/default/xui/it/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_snapshot.xml b/indra/newview/skins/default/xui/it/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_sound_devices.xml b/indra/newview/skins/default/xui/it/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_sound_preview.xml b/indra/newview/skins/default/xui/it/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_spellcheck.xml b/indra/newview/skins/default/xui/it/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/it/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_stats.xml b/indra/newview/skins/default/xui/it/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_sys_well.xml b/indra/newview/skins/default/xui/it/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_telehub.xml b/indra/newview/skins/default/xui/it/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/it/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/it/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/it/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/it/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_tools.xml b/indra/newview/skins/default/xui/it/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_top_objects.xml b/indra/newview/skins/default/xui/it/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_tos.xml b/indra/newview/skins/default/xui/it/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_toybox.xml b/indra/newview/skins/default/xui/it/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_translation_settings.xml b/indra/newview/skins/default/xui/it/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_url_entry.xml b/indra/newview/skins/default/xui/it/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_voice_controls.xml b/indra/newview/skins/default/xui/it/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_voice_effect.xml b/indra/newview/skins/default/xui/it/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_web_content.xml b/indra/newview/skins/default/xui/it/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/it/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_window_size.xml b/indra/newview/skins/default/xui/it/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/floater_world_map.xml b/indra/newview/skins/default/xui/it/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/inspect_avatar.xml b/indra/newview/skins/default/xui/it/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/inspect_group.xml b/indra/newview/skins/default/xui/it/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/inspect_object.xml b/indra/newview/skins/default/xui/it/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/inspect_remote_object.xml b/indra/newview/skins/default/xui/it/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/language_settings.xml b/indra/newview/skins/default/xui/it/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/it/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_attachment_other.xml b/indra/newview/skins/default/xui/it/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_attachment_self.xml b/indra/newview/skins/default/xui/it/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_avatar_icon.xml b/indra/newview/skins/default/xui/it/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_avatar_other.xml b/indra/newview/skins/default/xui/it/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_avatar_self.xml b/indra/newview/skins/default/xui/it/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_cof_attachment.xml b/indra/newview/skins/default/xui/it/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_cof_body_part.xml b/indra/newview/skins/default/xui/it/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_cof_clothing.xml b/indra/newview/skins/default/xui/it/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_cof_gear.xml b/indra/newview/skins/default/xui/it/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_edit.xml b/indra/newview/skins/default/xui/it/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_favorites.xml b/indra/newview/skins/default/xui/it/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_gesture_gear.xml b/indra/newview/skins/default/xui/it/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_group_plus.xml b/indra/newview/skins/default/xui/it/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_hide_navbar.xml b/indra/newview/skins/default/xui/it/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/it/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/it/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/it/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/it/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/it/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/it/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/it/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inventory.xml b/indra/newview/skins/default/xui/it/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inventory_add.xml b/indra/newview/skins/default/xui/it/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/it/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_land.xml b/indra/newview/skins/default/xui/it/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_landmark.xml b/indra/newview/skins/default/xui/it/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_login.xml b/indra/newview/skins/default/xui/it/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_media_ctrl.xml b/indra/newview/skins/default/xui/it/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_mini_map.xml b/indra/newview/skins/default/xui/it/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/it/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_navbar.xml b/indra/newview/skins/default/xui/it/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_nearby_chat.xml b/indra/newview/skins/default/xui/it/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_notification_well_button.xml b/indra/newview/skins/default/xui/it/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_object.xml b/indra/newview/skins/default/xui/it/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_object_icon.xml b/indra/newview/skins/default/xui/it/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_outfit_gear.xml b/indra/newview/skins/default/xui/it/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_outfit_tab.xml b/indra/newview/skins/default/xui/it/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_participant_list.xml b/indra/newview/skins/default/xui/it/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/it/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_groups.xml b/indra/newview/skins/default/xui/it/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/it/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_nearby.xml b/indra/newview/skins/default/xui/it/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/it/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/it/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/it/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_picks.xml b/indra/newview/skins/default/xui/it/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_picks_plus.xml b/indra/newview/skins/default/xui/it/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_place.xml b/indra/newview/skins/default/xui/it/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_place_add_button.xml b/indra/newview/skins/default/xui/it/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/it/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/it/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_profile_overflow.xml b/indra/newview/skins/default/xui/it/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_save_outfit.xml b/indra/newview/skins/default/xui/it/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_script_chiclet.xml b/indra/newview/skins/default/xui/it/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_slurl.xml b/indra/newview/skins/default/xui/it/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/it/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/it/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/it/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_text_editor.xml b/indra/newview/skins/default/xui/it/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_toolbars.xml b/indra/newview/skins/default/xui/it/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_topinfobar.xml b/indra/newview/skins/default/xui/it/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_agent.xml b/indra/newview/skins/default/xui/it/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_group.xml b/indra/newview/skins/default/xui/it/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_http.xml b/indra/newview/skins/default/xui/it/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_inventory.xml b/indra/newview/skins/default/xui/it/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_map.xml b/indra/newview/skins/default/xui/it/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_objectim.xml b/indra/newview/skins/default/xui/it/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_parcel.xml b/indra/newview/skins/default/xui/it/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_slapp.xml b/indra/newview/skins/default/xui/it/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_slurl.xml b/indra/newview/skins/default/xui/it/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_url_teleport.xml b/indra/newview/skins/default/xui/it/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_viewer.xml b/indra/newview/skins/default/xui/it/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/it/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_wearing_gear.xml b/indra/newview/skins/default/xui/it/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/menu_wearing_tab.xml b/indra/newview/skins/default/xui/it/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/mime_types.xml b/indra/newview/skins/default/xui/it/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/mime_types_linux.xml b/indra/newview/skins/default/xui/it/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/mime_types_mac.xml b/indra/newview/skins/default/xui/it/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/notifications.xml b/indra/newview/skins/default/xui/it/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/it/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_active_object_row.xml b/indra/newview/skins/default/xui/it/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/it/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/it/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/it/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/it/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/it/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/it/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/it/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_classified_info.xml b/indra/newview/skins/default/xui/it/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/it/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/it/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_cof_wearables.xml b/indra/newview/skins/default/xui/it/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/it/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/it/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_alpha.xml b/indra/newview/skins/default/xui/it/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_classified.xml b/indra/newview/skins/default/xui/it/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_eyes.xml b/indra/newview/skins/default/xui/it/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_gloves.xml b/indra/newview/skins/default/xui/it/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_hair.xml b/indra/newview/skins/default/xui/it/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_jacket.xml b/indra/newview/skins/default/xui/it/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_pants.xml b/indra/newview/skins/default/xui/it/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_physics.xml b/indra/newview/skins/default/xui/it/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_pick.xml b/indra/newview/skins/default/xui/it/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_profile.xml b/indra/newview/skins/default/xui/it/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_shape.xml b/indra/newview/skins/default/xui/it/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_shirt.xml b/indra/newview/skins/default/xui/it/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_shoes.xml b/indra/newview/skins/default/xui/it/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_skin.xml b/indra/newview/skins/default/xui/it/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_skirt.xml b/indra/newview/skins/default/xui/it/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_socks.xml b/indra/newview/skins/default/xui/it/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/it/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_underpants.xml b/indra/newview/skins/default/xui/it/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/it/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_edit_wearable.xml b/indra/newview/skins/default/xui/it/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_control_panel.xml b/indra/newview/skins/default/xui/it/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_general.xml b/indra/newview/skins/default/xui/it/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/it/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_invite.xml b/indra/newview/skins/default/xui/it/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_land_money.xml b/indra/newview/skins/default/xui/it/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_list_item.xml b/indra/newview/skins/default/xui/it/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_notices.xml b/indra/newview/skins/default/xui/it/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_notify.xml b/indra/newview/skins/default/xui/it/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_group_roles.xml b/indra/newview/skins/default/xui/it/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_im_control_panel.xml b/indra/newview/skins/default/xui/it/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_inventory_item.xml b/indra/newview/skins/default/xui/it/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_landmark_info.xml b/indra/newview/skins/default/xui/it/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_landmarks.xml b/indra/newview/skins/default/xui/it/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_login.xml b/indra/newview/skins/default/xui/it/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_main_inventory.xml b/indra/newview/skins/default/xui/it/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_me.xml b/indra/newview/skins/default/xui/it/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_media_settings_general.xml b/indra/newview/skins/default/xui/it/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/it/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_media_settings_security.xml b/indra/newview/skins/default/xui/it/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_navigation_bar.xml b/indra/newview/skins/default/xui/it/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_nearby_chat.xml b/indra/newview/skins/default/xui/it/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/it/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_nearby_media.xml b/indra/newview/skins/default/xui/it/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_notify_textbox.xml b/indra/newview/skins/default/xui/it/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_online_status_toast.xml b/indra/newview/skins/default/xui/it/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/it/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_outfit_edit.xml b/indra/newview/skins/default/xui/it/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/it/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/it/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_outfits_list.xml b/indra/newview/skins/default/xui/it/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/it/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_people.xml b/indra/newview/skins/default/xui/it/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_pick_info.xml b/indra/newview/skins/default/xui/it/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_picks.xml b/indra/newview/skins/default/xui/it/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_place_profile.xml b/indra/newview/skins/default/xui/it/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_places.xml b/indra/newview/skins/default/xui/it/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_postcard_message.xml b/indra/newview/skins/default/xui/it/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_postcard_settings.xml b/indra/newview/skins/default/xui/it/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/it/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/it/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_chat.xml b/indra/newview/skins/default/xui/it/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_colors.xml b/indra/newview/skins/default/xui/it/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_general.xml b/indra/newview/skins/default/xui/it/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/it/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_move.xml b/indra/newview/skins/default/xui/it/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/it/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_setup.xml b/indra/newview/skins/default/xui/it/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_preferences_sound.xml b/indra/newview/skins/default/xui/it/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/it/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_region_covenant.xml b/indra/newview/skins/default/xui/it/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_region_debug.xml b/indra/newview/skins/default/xui/it/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_region_environment.xml b/indra/newview/skins/default/xui/it/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_region_estate.xml b/indra/newview/skins/default/xui/it/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_region_general.xml b/indra/newview/skins/default/xui/it/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_region_terrain.xml b/indra/newview/skins/default/xui/it/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_script_ed.xml b/indra/newview/skins/default/xui/it/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/it/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/it/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_script_question_toast.xml b/indra/newview/skins/default/xui/it/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_scrolling_param.xml b/indra/newview/skins/default/xui/it/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/it/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/it/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/it/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_snapshot_local.xml b/indra/newview/skins/default/xui/it/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_snapshot_options.xml b/indra/newview/skins/default/xui/it/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/it/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/it/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_sound_devices.xml b/indra/newview/skins/default/xui/it/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/it/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_status_bar.xml b/indra/newview/skins/default/xui/it/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_teleport_history.xml b/indra/newview/skins/default/xui/it/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/it/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_voice_effect.xml b/indra/newview/skins/default/xui/it/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/it/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/panel_world_map.xml b/indra/newview/skins/default/xui/it/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/role_actions.xml b/indra/newview/skins/default/xui/it/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/sidepanel_appearance.xml b/indra/newview/skins/default/xui/it/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/sidepanel_inventory.xml b/indra/newview/skins/default/xui/it/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/sidepanel_item_info.xml b/indra/newview/skins/default/xui/it/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/sidepanel_task_info.xml b/indra/newview/skins/default/xui/it/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/strings.xml b/indra/newview/skins/default/xui/it/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/it/teleport_strings.xml b/indra/newview/skins/default/xui/it/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_about.xml b/indra/newview/skins/default/xui/ja/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_about_land.xml b/indra/newview/skins/default/xui/ja/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_activeim.xml b/indra/newview/skins/default/xui/ja/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/ja/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/ja/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_auction.xml b/indra/newview/skins/default/xui/ja/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_autoreplace.xml b/indra/newview/skins/default/xui/ja/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_avatar.xml b/indra/newview/skins/default/xui/ja/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_avatar_picker.xml b/indra/newview/skins/default/xui/ja/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_avatar_textures.xml b/indra/newview/skins/default/xui/ja/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_beacons.xml b/indra/newview/skins/default/xui/ja/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_build_options.xml b/indra/newview/skins/default/xui/ja/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_bulk_perms.xml b/indra/newview/skins/default/xui/ja/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_bumps.xml b/indra/newview/skins/default/xui/ja/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_buy_contents.xml b/indra/newview/skins/default/xui/ja/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_buy_currency.xml b/indra/newview/skins/default/xui/ja/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/ja/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_buy_land.xml b/indra/newview/skins/default/xui/ja/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_buy_object.xml b/indra/newview/skins/default/xui/ja/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_camera.xml b/indra/newview/skins/default/xui/ja/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_chat_bar.xml b/indra/newview/skins/default/xui/ja/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_choose_group.xml b/indra/newview/skins/default/xui/ja/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_color_picker.xml b/indra/newview/skins/default/xui/ja/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_critical.xml b/indra/newview/skins/default/xui/ja/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/ja/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_destinations.xml b/indra/newview/skins/default/xui/ja/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_display_name.xml b/indra/newview/skins/default/xui/ja/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/ja/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/ja/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/ja/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_environment_settings.xml b/indra/newview/skins/default/xui/ja/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_event.xml b/indra/newview/skins/default/xui/ja/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_fast_timers.xml b/indra/newview/skins/default/xui/ja/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_font_test.xml b/indra/newview/skins/default/xui/ja/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_gesture.xml b/indra/newview/skins/default/xui/ja/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_god_tools.xml b/indra/newview/skins/default/xui/ja/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_hardware_settings.xml b/indra/newview/skins/default/xui/ja/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_help_browser.xml b/indra/newview/skins/default/xui/ja/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_how_to.xml b/indra/newview/skins/default/xui/ja/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_hud.xml b/indra/newview/skins/default/xui/ja/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_im_container.xml b/indra/newview/skins/default/xui/ja/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_im_session.xml b/indra/newview/skins/default/xui/ja/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_image_preview.xml b/indra/newview/skins/default/xui/ja/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_import_collada.xml b/indra/newview/skins/default/xui/ja/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_incoming_call.xml b/indra/newview/skins/default/xui/ja/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_inspect.xml b/indra/newview/skins/default/xui/ja/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/ja/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_joystick.xml b/indra/newview/skins/default/xui/ja/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_lagmeter.xml b/indra/newview/skins/default/xui/ja/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_land_holdings.xml b/indra/newview/skins/default/xui/ja/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/ja/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_lsl_guide.xml b/indra/newview/skins/default/xui/ja/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_map.xml b/indra/newview/skins/default/xui/ja/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_media_browser.xml b/indra/newview/skins/default/xui/ja/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_media_settings.xml b/indra/newview/skins/default/xui/ja/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_mem_leaking.xml b/indra/newview/skins/default/xui/ja/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/ja/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_model_preview.xml b/indra/newview/skins/default/xui/ja/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_moveview.xml b/indra/newview/skins/default/xui/ja/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_mute_object.xml b/indra/newview/skins/default/xui/ja/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_my_appearance.xml b/indra/newview/skins/default/xui/ja/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_my_inventory.xml b/indra/newview/skins/default/xui/ja/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_notification.xml b/indra/newview/skins/default/xui/ja/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_notifications_console.xml b/indra/newview/skins/default/xui/ja/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_object_weights.xml b/indra/newview/skins/default/xui/ja/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_openobject.xml b/indra/newview/skins/default/xui/ja/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_outgoing_call.xml b/indra/newview/skins/default/xui/ja/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/ja/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/ja/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/ja/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_pay.xml b/indra/newview/skins/default/xui/ja/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_pay_object.xml b/indra/newview/skins/default/xui/ja/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_people.xml b/indra/newview/skins/default/xui/ja/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_perm_prefs.xml b/indra/newview/skins/default/xui/ja/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_picks.xml b/indra/newview/skins/default/xui/ja/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_places.xml b/indra/newview/skins/default/xui/ja/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_post_process.xml b/indra/newview/skins/default/xui/ja/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preferences.xml b/indra/newview/skins/default/xui/ja/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preview_animation.xml b/indra/newview/skins/default/xui/ja/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preview_gesture.xml b/indra/newview/skins/default/xui/ja/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preview_notecard.xml b/indra/newview/skins/default/xui/ja/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preview_sound.xml b/indra/newview/skins/default/xui/ja/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_preview_texture.xml b/indra/newview/skins/default/xui/ja/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_price_for_listing.xml b/indra/newview/skins/default/xui/ja/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_publish_classified.xml b/indra/newview/skins/default/xui/ja/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_region_debug_console.xml b/indra/newview/skins/default/xui/ja/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_region_info.xml b/indra/newview/skins/default/xui/ja/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_report_abuse.xml b/indra/newview/skins/default/xui/ja/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_script_debug.xml b/indra/newview/skins/default/xui/ja/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/ja/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_script_limits.xml b/indra/newview/skins/default/xui/ja/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_script_preview.xml b/indra/newview/skins/default/xui/ja/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_script_queue.xml b/indra/newview/skins/default/xui/ja/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_script_search.xml b/indra/newview/skins/default/xui/ja/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_search.xml b/indra/newview/skins/default/xui/ja/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_select_key.xml b/indra/newview/skins/default/xui/ja/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_sell_land.xml b/indra/newview/skins/default/xui/ja/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_settings_debug.xml b/indra/newview/skins/default/xui/ja/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_snapshot.xml b/indra/newview/skins/default/xui/ja/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_sound_devices.xml b/indra/newview/skins/default/xui/ja/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_sound_preview.xml b/indra/newview/skins/default/xui/ja/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_spellcheck.xml b/indra/newview/skins/default/xui/ja/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/ja/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_stats.xml b/indra/newview/skins/default/xui/ja/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_sys_well.xml b/indra/newview/skins/default/xui/ja/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_telehub.xml b/indra/newview/skins/default/xui/ja/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/ja/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/ja/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/ja/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_tools.xml b/indra/newview/skins/default/xui/ja/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_top_objects.xml b/indra/newview/skins/default/xui/ja/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_tos.xml b/indra/newview/skins/default/xui/ja/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_toybox.xml b/indra/newview/skins/default/xui/ja/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_translation_settings.xml b/indra/newview/skins/default/xui/ja/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_url_entry.xml b/indra/newview/skins/default/xui/ja/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_voice_controls.xml b/indra/newview/skins/default/xui/ja/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_voice_effect.xml b/indra/newview/skins/default/xui/ja/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_web_content.xml b/indra/newview/skins/default/xui/ja/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/ja/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_window_size.xml b/indra/newview/skins/default/xui/ja/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/floater_world_map.xml b/indra/newview/skins/default/xui/ja/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/inspect_avatar.xml b/indra/newview/skins/default/xui/ja/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/inspect_group.xml b/indra/newview/skins/default/xui/ja/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/inspect_object.xml b/indra/newview/skins/default/xui/ja/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/inspect_remote_object.xml b/indra/newview/skins/default/xui/ja/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/language_settings.xml b/indra/newview/skins/default/xui/ja/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/ja/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_attachment_other.xml b/indra/newview/skins/default/xui/ja/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_attachment_self.xml b/indra/newview/skins/default/xui/ja/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_avatar_icon.xml b/indra/newview/skins/default/xui/ja/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_avatar_other.xml b/indra/newview/skins/default/xui/ja/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_avatar_self.xml b/indra/newview/skins/default/xui/ja/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_cof_attachment.xml b/indra/newview/skins/default/xui/ja/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_cof_body_part.xml b/indra/newview/skins/default/xui/ja/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_cof_clothing.xml b/indra/newview/skins/default/xui/ja/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_cof_gear.xml b/indra/newview/skins/default/xui/ja/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_edit.xml b/indra/newview/skins/default/xui/ja/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_favorites.xml b/indra/newview/skins/default/xui/ja/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_gesture_gear.xml b/indra/newview/skins/default/xui/ja/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_group_plus.xml b/indra/newview/skins/default/xui/ja/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_hide_navbar.xml b/indra/newview/skins/default/xui/ja/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/ja/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/ja/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/ja/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/ja/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/ja/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/ja/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inventory.xml b/indra/newview/skins/default/xui/ja/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inventory_add.xml b/indra/newview/skins/default/xui/ja/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/ja/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_land.xml b/indra/newview/skins/default/xui/ja/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_landmark.xml b/indra/newview/skins/default/xui/ja/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_login.xml b/indra/newview/skins/default/xui/ja/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_media_ctrl.xml b/indra/newview/skins/default/xui/ja/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_mini_map.xml b/indra/newview/skins/default/xui/ja/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/ja/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_navbar.xml b/indra/newview/skins/default/xui/ja/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_nearby_chat.xml b/indra/newview/skins/default/xui/ja/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_notification_well_button.xml b/indra/newview/skins/default/xui/ja/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_object.xml b/indra/newview/skins/default/xui/ja/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_object_icon.xml b/indra/newview/skins/default/xui/ja/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_outfit_gear.xml b/indra/newview/skins/default/xui/ja/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_outfit_tab.xml b/indra/newview/skins/default/xui/ja/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_participant_list.xml b/indra/newview/skins/default/xui/ja/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/ja/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_groups.xml b/indra/newview/skins/default/xui/ja/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/ja/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_nearby.xml b/indra/newview/skins/default/xui/ja/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/ja/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/ja/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/ja/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_picks.xml b/indra/newview/skins/default/xui/ja/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_picks_plus.xml b/indra/newview/skins/default/xui/ja/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_place.xml b/indra/newview/skins/default/xui/ja/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_place_add_button.xml b/indra/newview/skins/default/xui/ja/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/ja/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/ja/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_profile_overflow.xml b/indra/newview/skins/default/xui/ja/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_save_outfit.xml b/indra/newview/skins/default/xui/ja/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_script_chiclet.xml b/indra/newview/skins/default/xui/ja/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_slurl.xml b/indra/newview/skins/default/xui/ja/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/ja/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/ja/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/ja/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_text_editor.xml b/indra/newview/skins/default/xui/ja/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_toolbars.xml b/indra/newview/skins/default/xui/ja/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_topinfobar.xml b/indra/newview/skins/default/xui/ja/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_agent.xml b/indra/newview/skins/default/xui/ja/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_group.xml b/indra/newview/skins/default/xui/ja/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_http.xml b/indra/newview/skins/default/xui/ja/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_inventory.xml b/indra/newview/skins/default/xui/ja/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_map.xml b/indra/newview/skins/default/xui/ja/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_objectim.xml b/indra/newview/skins/default/xui/ja/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_parcel.xml b/indra/newview/skins/default/xui/ja/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_slapp.xml b/indra/newview/skins/default/xui/ja/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_slurl.xml b/indra/newview/skins/default/xui/ja/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_url_teleport.xml b/indra/newview/skins/default/xui/ja/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_viewer.xml b/indra/newview/skins/default/xui/ja/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/ja/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_wearing_gear.xml b/indra/newview/skins/default/xui/ja/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/menu_wearing_tab.xml b/indra/newview/skins/default/xui/ja/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/mime_types.xml b/indra/newview/skins/default/xui/ja/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/mime_types_linux.xml b/indra/newview/skins/default/xui/ja/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/mime_types_mac.xml b/indra/newview/skins/default/xui/ja/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/notifications.xml b/indra/newview/skins/default/xui/ja/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/ja/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_active_object_row.xml b/indra/newview/skins/default/xui/ja/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/ja/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/ja/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_avatar_tag.xml b/indra/newview/skins/default/xui/ja/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/ja/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/ja/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/ja/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/ja/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_chat_header.xml b/indra/newview/skins/default/xui/ja/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/ja/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_classified_info.xml b/indra/newview/skins/default/xui/ja/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/ja/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/ja/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_cof_wearables.xml b/indra/newview/skins/default/xui/ja/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/ja/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/ja/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_alpha.xml b/indra/newview/skins/default/xui/ja/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_classified.xml b/indra/newview/skins/default/xui/ja/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_eyes.xml b/indra/newview/skins/default/xui/ja/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_gloves.xml b/indra/newview/skins/default/xui/ja/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_hair.xml b/indra/newview/skins/default/xui/ja/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_jacket.xml b/indra/newview/skins/default/xui/ja/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_pants.xml b/indra/newview/skins/default/xui/ja/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_physics.xml b/indra/newview/skins/default/xui/ja/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_pick.xml b/indra/newview/skins/default/xui/ja/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_profile.xml b/indra/newview/skins/default/xui/ja/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_shape.xml b/indra/newview/skins/default/xui/ja/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_shirt.xml b/indra/newview/skins/default/xui/ja/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_shoes.xml b/indra/newview/skins/default/xui/ja/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_skin.xml b/indra/newview/skins/default/xui/ja/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_skirt.xml b/indra/newview/skins/default/xui/ja/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_socks.xml b/indra/newview/skins/default/xui/ja/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/ja/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_underpants.xml b/indra/newview/skins/default/xui/ja/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/ja/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_edit_wearable.xml b/indra/newview/skins/default/xui/ja/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_control_panel.xml b/indra/newview/skins/default/xui/ja/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_general.xml b/indra/newview/skins/default/xui/ja/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_invite.xml b/indra/newview/skins/default/xui/ja/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_land_money.xml b/indra/newview/skins/default/xui/ja/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_list_item.xml b/indra/newview/skins/default/xui/ja/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_notices.xml b/indra/newview/skins/default/xui/ja/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_notify.xml b/indra/newview/skins/default/xui/ja/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_group_roles.xml b/indra/newview/skins/default/xui/ja/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_im_control_panel.xml b/indra/newview/skins/default/xui/ja/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_instant_message.xml b/indra/newview/skins/default/xui/ja/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_inventory_item.xml b/indra/newview/skins/default/xui/ja/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_landmark_info.xml b/indra/newview/skins/default/xui/ja/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_landmarks.xml b/indra/newview/skins/default/xui/ja/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_login.xml b/indra/newview/skins/default/xui/ja/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_main_inventory.xml b/indra/newview/skins/default/xui/ja/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_me.xml b/indra/newview/skins/default/xui/ja/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_media_settings_general.xml b/indra/newview/skins/default/xui/ja/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/ja/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_media_settings_security.xml b/indra/newview/skins/default/xui/ja/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_navigation_bar.xml b/indra/newview/skins/default/xui/ja/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_nearby_chat.xml b/indra/newview/skins/default/xui/ja/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/ja/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_nearby_media.xml b/indra/newview/skins/default/xui/ja/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_notifications_channel.xml b/indra/newview/skins/default/xui/ja/panel_notifications_channel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_notify_textbox.xml b/indra/newview/skins/default/xui/ja/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_online_status_toast.xml b/indra/newview/skins/default/xui/ja/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_outfit_edit.xml b/indra/newview/skins/default/xui/ja/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/ja/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_outfits_list.xml b/indra/newview/skins/default/xui/ja/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/ja/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_people.xml b/indra/newview/skins/default/xui/ja/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_pick_info.xml b/indra/newview/skins/default/xui/ja/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_picks.xml b/indra/newview/skins/default/xui/ja/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_place_profile.xml b/indra/newview/skins/default/xui/ja/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_places.xml b/indra/newview/skins/default/xui/ja/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_postcard_message.xml b/indra/newview/skins/default/xui/ja/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_postcard_settings.xml b/indra/newview/skins/default/xui/ja/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_chat.xml b/indra/newview/skins/default/xui/ja/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_colors.xml b/indra/newview/skins/default/xui/ja/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_general.xml b/indra/newview/skins/default/xui/ja/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_move.xml b/indra/newview/skins/default/xui/ja/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml b/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_sound.xml b/indra/newview/skins/default/xui/ja/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/ja/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_region_covenant.xml b/indra/newview/skins/default/xui/ja/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_region_debug.xml b/indra/newview/skins/default/xui/ja/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_region_environment.xml b/indra/newview/skins/default/xui/ja/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_region_estate.xml b/indra/newview/skins/default/xui/ja/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_region_general.xml b/indra/newview/skins/default/xui/ja/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_region_terrain.xml b/indra/newview/skins/default/xui/ja/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_script_ed.xml b/indra/newview/skins/default/xui/ja/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_script_question_toast.xml b/indra/newview/skins/default/xui/ja/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_scrolling_param.xml b/indra/newview/skins/default/xui/ja/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/ja/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/ja/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_sidetray_home_tab.xml b/indra/newview/skins/default/xui/ja/panel_sidetray_home_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/ja/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_snapshot_local.xml b/indra/newview/skins/default/xui/ja/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_snapshot_options.xml b/indra/newview/skins/default/xui/ja/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/ja/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/ja/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_sound_devices.xml b/indra/newview/skins/default/xui/ja/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/ja/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_status_bar.xml b/indra/newview/skins/default/xui/ja/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_sys_well_item.xml b/indra/newview/skins/default/xui/ja/panel_sys_well_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_teleport_history.xml b/indra/newview/skins/default/xui/ja/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/ja/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_voice_effect.xml b/indra/newview/skins/default/xui/ja/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/ja/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/panel_world_map.xml b/indra/newview/skins/default/xui/ja/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/role_actions.xml b/indra/newview/skins/default/xui/ja/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/sidepanel_appearance.xml b/indra/newview/skins/default/xui/ja/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/sidepanel_inventory.xml b/indra/newview/skins/default/xui/ja/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/sidepanel_item_info.xml b/indra/newview/skins/default/xui/ja/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/sidepanel_task_info.xml b/indra/newview/skins/default/xui/ja/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/strings.xml b/indra/newview/skins/default/xui/ja/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/teleport_strings.xml b/indra/newview/skins/default/xui/ja/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ja/xui_version.xml b/indra/newview/skins/default/xui/ja/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_about.xml b/indra/newview/skins/default/xui/pl/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_about_land.xml b/indra/newview/skins/default/xui/pl/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_activeim.xml b/indra/newview/skins/default/xui/pl/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_animation_preview.xml b/indra/newview/skins/default/xui/pl/floater_animation_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_auction.xml b/indra/newview/skins/default/xui/pl/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_avatar_picker.xml b/indra/newview/skins/default/xui/pl/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_avatar_textures.xml b/indra/newview/skins/default/xui/pl/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_beacons.xml b/indra/newview/skins/default/xui/pl/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_build_options.xml b/indra/newview/skins/default/xui/pl/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_bulk_perms.xml b/indra/newview/skins/default/xui/pl/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_bumps.xml b/indra/newview/skins/default/xui/pl/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_buy_contents.xml b/indra/newview/skins/default/xui/pl/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_buy_currency.xml b/indra/newview/skins/default/xui/pl/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/pl/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_buy_land.xml b/indra/newview/skins/default/xui/pl/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_buy_object.xml b/indra/newview/skins/default/xui/pl/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_camera.xml b/indra/newview/skins/default/xui/pl/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_choose_group.xml b/indra/newview/skins/default/xui/pl/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_color_picker.xml b/indra/newview/skins/default/xui/pl/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_critical.xml b/indra/newview/skins/default/xui/pl/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_display_name.xml b/indra/newview/skins/default/xui/pl/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_event.xml b/indra/newview/skins/default/xui/pl/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_font_test.xml b/indra/newview/skins/default/xui/pl/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_gesture.xml b/indra/newview/skins/default/xui/pl/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_god_tools.xml b/indra/newview/skins/default/xui/pl/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_hardware_settings.xml b/indra/newview/skins/default/xui/pl/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_help_browser.xml b/indra/newview/skins/default/xui/pl/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_hud.xml b/indra/newview/skins/default/xui/pl/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_im_container.xml b/indra/newview/skins/default/xui/pl/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_im_session.xml b/indra/newview/skins/default/xui/pl/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_image_preview.xml b/indra/newview/skins/default/xui/pl/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_incoming_call.xml b/indra/newview/skins/default/xui/pl/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_inspect.xml b/indra/newview/skins/default/xui/pl/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_inventory.xml b/indra/newview/skins/default/xui/pl/floater_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/pl/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/pl/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_joystick.xml b/indra/newview/skins/default/xui/pl/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_lagmeter.xml b/indra/newview/skins/default/xui/pl/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_land_holdings.xml b/indra/newview/skins/default/xui/pl/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/pl/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_lsl_guide.xml b/indra/newview/skins/default/xui/pl/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_map.xml b/indra/newview/skins/default/xui/pl/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_media_browser.xml b/indra/newview/skins/default/xui/pl/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_media_settings.xml b/indra/newview/skins/default/xui/pl/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_mem_leaking.xml b/indra/newview/skins/default/xui/pl/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_moveview.xml b/indra/newview/skins/default/xui/pl/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_mute_object.xml b/indra/newview/skins/default/xui/pl/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_nearby_chat.xml b/indra/newview/skins/default/xui/pl/floater_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_openobject.xml b/indra/newview/skins/default/xui/pl/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_outgoing_call.xml b/indra/newview/skins/default/xui/pl/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_pay.xml b/indra/newview/skins/default/xui/pl/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_pay_object.xml b/indra/newview/skins/default/xui/pl/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_perm_prefs.xml b/indra/newview/skins/default/xui/pl/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_post_process.xml b/indra/newview/skins/default/xui/pl/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_postcard.xml b/indra/newview/skins/default/xui/pl/floater_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_preferences.xml b/indra/newview/skins/default/xui/pl/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_preview_animation.xml b/indra/newview/skins/default/xui/pl/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_preview_gesture.xml b/indra/newview/skins/default/xui/pl/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_preview_notecard.xml b/indra/newview/skins/default/xui/pl/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_preview_sound.xml b/indra/newview/skins/default/xui/pl/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_preview_texture.xml b/indra/newview/skins/default/xui/pl/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_publish_classified.xml b/indra/newview/skins/default/xui/pl/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_region_debug_console.xml b/indra/newview/skins/default/xui/pl/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_region_info.xml b/indra/newview/skins/default/xui/pl/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_report_abuse.xml b/indra/newview/skins/default/xui/pl/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_script_debug.xml b/indra/newview/skins/default/xui/pl/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/pl/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_script_limits.xml b/indra/newview/skins/default/xui/pl/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_script_preview.xml b/indra/newview/skins/default/xui/pl/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_script_queue.xml b/indra/newview/skins/default/xui/pl/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_script_search.xml b/indra/newview/skins/default/xui/pl/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_search.xml b/indra/newview/skins/default/xui/pl/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_select_key.xml b/indra/newview/skins/default/xui/pl/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_sell_land.xml b/indra/newview/skins/default/xui/pl/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_settings_debug.xml b/indra/newview/skins/default/xui/pl/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_snapshot.xml b/indra/newview/skins/default/xui/pl/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_sound_preview.xml b/indra/newview/skins/default/xui/pl/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_stats.xml b/indra/newview/skins/default/xui/pl/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_sys_well.xml b/indra/newview/skins/default/xui/pl/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_telehub.xml b/indra/newview/skins/default/xui/pl/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/pl/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_tools.xml b/indra/newview/skins/default/xui/pl/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_top_objects.xml b/indra/newview/skins/default/xui/pl/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_tos.xml b/indra/newview/skins/default/xui/pl/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_url_entry.xml b/indra/newview/skins/default/xui/pl/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_voice_controls.xml b/indra/newview/skins/default/xui/pl/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_voice_effect.xml b/indra/newview/skins/default/xui/pl/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_web_content.xml b/indra/newview/skins/default/xui/pl/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/pl/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_window_size.xml b/indra/newview/skins/default/xui/pl/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/floater_world_map.xml b/indra/newview/skins/default/xui/pl/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/inspect_avatar.xml b/indra/newview/skins/default/xui/pl/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/inspect_group.xml b/indra/newview/skins/default/xui/pl/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/inspect_object.xml b/indra/newview/skins/default/xui/pl/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/inspect_remote_object.xml b/indra/newview/skins/default/xui/pl/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/language_settings.xml b/indra/newview/skins/default/xui/pl/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/pl/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_attachment_other.xml b/indra/newview/skins/default/xui/pl/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_attachment_self.xml b/indra/newview/skins/default/xui/pl/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_avatar_icon.xml b/indra/newview/skins/default/xui/pl/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_avatar_other.xml b/indra/newview/skins/default/xui/pl/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_avatar_self.xml b/indra/newview/skins/default/xui/pl/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_bottomtray.xml b/indra/newview/skins/default/xui/pl/menu_bottomtray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_cof_attachment.xml b/indra/newview/skins/default/xui/pl/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_cof_body_part.xml b/indra/newview/skins/default/xui/pl/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_cof_clothing.xml b/indra/newview/skins/default/xui/pl/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_cof_gear.xml b/indra/newview/skins/default/xui/pl/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_edit.xml b/indra/newview/skins/default/xui/pl/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_favorites.xml b/indra/newview/skins/default/xui/pl/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_gesture_gear.xml b/indra/newview/skins/default/xui/pl/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_group_plus.xml b/indra/newview/skins/default/xui/pl/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_hide_navbar.xml b/indra/newview/skins/default/xui/pl/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/pl/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/pl/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/pl/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/pl/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/pl/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/pl/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/pl/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inventory.xml b/indra/newview/skins/default/xui/pl/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inventory_add.xml b/indra/newview/skins/default/xui/pl/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/pl/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_land.xml b/indra/newview/skins/default/xui/pl/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_landmark.xml b/indra/newview/skins/default/xui/pl/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_login.xml b/indra/newview/skins/default/xui/pl/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_media_ctrl.xml b/indra/newview/skins/default/xui/pl/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_mini_map.xml b/indra/newview/skins/default/xui/pl/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_navbar.xml b/indra/newview/skins/default/xui/pl/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_nearby_chat.xml b/indra/newview/skins/default/xui/pl/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_notification_well_button.xml b/indra/newview/skins/default/xui/pl/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_object.xml b/indra/newview/skins/default/xui/pl/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_object_icon.xml b/indra/newview/skins/default/xui/pl/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_outfit_gear.xml b/indra/newview/skins/default/xui/pl/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_outfit_tab.xml b/indra/newview/skins/default/xui/pl/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_participant_list.xml b/indra/newview/skins/default/xui/pl/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/pl/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_groups.xml b/indra/newview/skins/default/xui/pl/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/pl/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_nearby.xml b/indra/newview/skins/default/xui/pl/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/pl/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/pl/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/pl/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_picks.xml b/indra/newview/skins/default/xui/pl/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_picks_plus.xml b/indra/newview/skins/default/xui/pl/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_place.xml b/indra/newview/skins/default/xui/pl/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_place_add_button.xml b/indra/newview/skins/default/xui/pl/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/pl/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/pl/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_profile_overflow.xml b/indra/newview/skins/default/xui/pl/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_save_outfit.xml b/indra/newview/skins/default/xui/pl/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_script_chiclet.xml b/indra/newview/skins/default/xui/pl/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_slurl.xml b/indra/newview/skins/default/xui/pl/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/pl/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/pl/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/pl/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_text_editor.xml b/indra/newview/skins/default/xui/pl/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_topinfobar.xml b/indra/newview/skins/default/xui/pl/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_agent.xml b/indra/newview/skins/default/xui/pl/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_group.xml b/indra/newview/skins/default/xui/pl/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_http.xml b/indra/newview/skins/default/xui/pl/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_inventory.xml b/indra/newview/skins/default/xui/pl/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_map.xml b/indra/newview/skins/default/xui/pl/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_objectim.xml b/indra/newview/skins/default/xui/pl/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_parcel.xml b/indra/newview/skins/default/xui/pl/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_slapp.xml b/indra/newview/skins/default/xui/pl/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_slurl.xml b/indra/newview/skins/default/xui/pl/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_url_teleport.xml b/indra/newview/skins/default/xui/pl/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_viewer.xml b/indra/newview/skins/default/xui/pl/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/pl/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_wearing_gear.xml b/indra/newview/skins/default/xui/pl/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/menu_wearing_tab.xml b/indra/newview/skins/default/xui/pl/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/mime_types.xml b/indra/newview/skins/default/xui/pl/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/mime_types_linux.xml b/indra/newview/skins/default/xui/pl/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/mime_types_mac.xml b/indra/newview/skins/default/xui/pl/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/notifications.xml b/indra/newview/skins/default/xui/pl/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/pl/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_active_object_row.xml b/indra/newview/skins/default/xui/pl/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/pl/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/pl/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/pl/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/pl/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/pl/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_bottomtray.xml b/indra/newview/skins/default/xui/pl/panel_bottomtray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/pl/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_classified_info.xml b/indra/newview/skins/default/xui/pl/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/pl/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/pl/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_cof_wearables.xml b/indra/newview/skins/default/xui/pl/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/pl/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/pl/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_alpha.xml b/indra/newview/skins/default/xui/pl/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_classified.xml b/indra/newview/skins/default/xui/pl/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_eyes.xml b/indra/newview/skins/default/xui/pl/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_gloves.xml b/indra/newview/skins/default/xui/pl/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_hair.xml b/indra/newview/skins/default/xui/pl/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_jacket.xml b/indra/newview/skins/default/xui/pl/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_pants.xml b/indra/newview/skins/default/xui/pl/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_physics.xml b/indra/newview/skins/default/xui/pl/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_pick.xml b/indra/newview/skins/default/xui/pl/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_profile.xml b/indra/newview/skins/default/xui/pl/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_shape.xml b/indra/newview/skins/default/xui/pl/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_shirt.xml b/indra/newview/skins/default/xui/pl/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_shoes.xml b/indra/newview/skins/default/xui/pl/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_skin.xml b/indra/newview/skins/default/xui/pl/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_skirt.xml b/indra/newview/skins/default/xui/pl/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_socks.xml b/indra/newview/skins/default/xui/pl/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/pl/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_underpants.xml b/indra/newview/skins/default/xui/pl/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/pl/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_edit_wearable.xml b/indra/newview/skins/default/xui/pl/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_control_panel.xml b/indra/newview/skins/default/xui/pl/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_general.xml b/indra/newview/skins/default/xui/pl/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/pl/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_invite.xml b/indra/newview/skins/default/xui/pl/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_land_money.xml b/indra/newview/skins/default/xui/pl/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_list_item.xml b/indra/newview/skins/default/xui/pl/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_notices.xml b/indra/newview/skins/default/xui/pl/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_notify.xml b/indra/newview/skins/default/xui/pl/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_group_roles.xml b/indra/newview/skins/default/xui/pl/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_im_control_panel.xml b/indra/newview/skins/default/xui/pl/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_inventory_item.xml b/indra/newview/skins/default/xui/pl/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_landmark_info.xml b/indra/newview/skins/default/xui/pl/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_landmarks.xml b/indra/newview/skins/default/xui/pl/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_login.xml b/indra/newview/skins/default/xui/pl/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_main_inventory.xml b/indra/newview/skins/default/xui/pl/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_me.xml b/indra/newview/skins/default/xui/pl/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_media_settings_general.xml b/indra/newview/skins/default/xui/pl/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/pl/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_media_settings_security.xml b/indra/newview/skins/default/xui/pl/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_navigation_bar.xml b/indra/newview/skins/default/xui/pl/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/pl/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_nearby_media.xml b/indra/newview/skins/default/xui/pl/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_notify_textbox.xml b/indra/newview/skins/default/xui/pl/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_online_status_toast.xml b/indra/newview/skins/default/xui/pl/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_outfit_edit.xml b/indra/newview/skins/default/xui/pl/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/pl/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/pl/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_outfits_list.xml b/indra/newview/skins/default/xui/pl/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/pl/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_people.xml b/indra/newview/skins/default/xui/pl/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_pick_info.xml b/indra/newview/skins/default/xui/pl/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_picks.xml b/indra/newview/skins/default/xui/pl/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_place_profile.xml b/indra/newview/skins/default/xui/pl/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_places.xml b/indra/newview/skins/default/xui/pl/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/pl/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/pl/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_chat.xml b/indra/newview/skins/default/xui/pl/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_colors.xml b/indra/newview/skins/default/xui/pl/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_general.xml b/indra/newview/skins/default/xui/pl/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/pl/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_move.xml b/indra/newview/skins/default/xui/pl/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/pl/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_setup.xml b/indra/newview/skins/default/xui/pl/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_preferences_sound.xml b/indra/newview/skins/default/xui/pl/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/pl/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_region_covenant.xml b/indra/newview/skins/default/xui/pl/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_region_debug.xml b/indra/newview/skins/default/xui/pl/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_region_estate.xml b/indra/newview/skins/default/xui/pl/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_region_general.xml b/indra/newview/skins/default/xui/pl/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_region_terrain.xml b/indra/newview/skins/default/xui/pl/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_region_texture.xml b/indra/newview/skins/default/xui/pl/panel_region_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_script_ed.xml b/indra/newview/skins/default/xui/pl/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/pl/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/pl/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_scrolling_param.xml b/indra/newview/skins/default/xui/pl/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/pl/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_side_tray.xml b/indra/newview/skins/default/xui/pl/panel_side_tray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/pl/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/pl/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_status_bar.xml b/indra/newview/skins/default/xui/pl/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_teleport_history.xml b/indra/newview/skins/default/xui/pl/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/pl/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_voice_effect.xml b/indra/newview/skins/default/xui/pl/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/pl/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/panel_world_map.xml b/indra/newview/skins/default/xui/pl/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/role_actions.xml b/indra/newview/skins/default/xui/pl/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/sidepanel_appearance.xml b/indra/newview/skins/default/xui/pl/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/sidepanel_inventory.xml b/indra/newview/skins/default/xui/pl/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/sidepanel_item_info.xml b/indra/newview/skins/default/xui/pl/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/sidepanel_task_info.xml b/indra/newview/skins/default/xui/pl/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/strings.xml b/indra/newview/skins/default/xui/pl/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/teleport_strings.xml b/indra/newview/skins/default/xui/pl/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pl/xui_version.xml b/indra/newview/skins/default/xui/pl/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_about.xml b/indra/newview/skins/default/xui/pt/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_about_land.xml b/indra/newview/skins/default/xui/pt/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_activeim.xml b/indra/newview/skins/default/xui/pt/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/pt/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/pt/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_auction.xml b/indra/newview/skins/default/xui/pt/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_autoreplace.xml b/indra/newview/skins/default/xui/pt/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_avatar.xml b/indra/newview/skins/default/xui/pt/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_avatar_picker.xml b/indra/newview/skins/default/xui/pt/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_avatar_textures.xml b/indra/newview/skins/default/xui/pt/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_beacons.xml b/indra/newview/skins/default/xui/pt/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_build_options.xml b/indra/newview/skins/default/xui/pt/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_bulk_perms.xml b/indra/newview/skins/default/xui/pt/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_bumps.xml b/indra/newview/skins/default/xui/pt/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_buy_contents.xml b/indra/newview/skins/default/xui/pt/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_buy_currency.xml b/indra/newview/skins/default/xui/pt/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/pt/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_buy_land.xml b/indra/newview/skins/default/xui/pt/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_buy_object.xml b/indra/newview/skins/default/xui/pt/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_camera.xml b/indra/newview/skins/default/xui/pt/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_chat_bar.xml b/indra/newview/skins/default/xui/pt/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_choose_group.xml b/indra/newview/skins/default/xui/pt/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_color_picker.xml b/indra/newview/skins/default/xui/pt/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_critical.xml b/indra/newview/skins/default/xui/pt/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/pt/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_destinations.xml b/indra/newview/skins/default/xui/pt/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_display_name.xml b/indra/newview/skins/default/xui/pt/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/pt/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/pt/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/pt/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_environment_settings.xml b/indra/newview/skins/default/xui/pt/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_event.xml b/indra/newview/skins/default/xui/pt/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_fast_timers.xml b/indra/newview/skins/default/xui/pt/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_font_test.xml b/indra/newview/skins/default/xui/pt/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_gesture.xml b/indra/newview/skins/default/xui/pt/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_god_tools.xml b/indra/newview/skins/default/xui/pt/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_hardware_settings.xml b/indra/newview/skins/default/xui/pt/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_help_browser.xml b/indra/newview/skins/default/xui/pt/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_how_to.xml b/indra/newview/skins/default/xui/pt/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_hud.xml b/indra/newview/skins/default/xui/pt/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_im_container.xml b/indra/newview/skins/default/xui/pt/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_im_session.xml b/indra/newview/skins/default/xui/pt/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_image_preview.xml b/indra/newview/skins/default/xui/pt/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_import_collada.xml b/indra/newview/skins/default/xui/pt/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_incoming_call.xml b/indra/newview/skins/default/xui/pt/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_inspect.xml b/indra/newview/skins/default/xui/pt/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/pt/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/pt/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_joystick.xml b/indra/newview/skins/default/xui/pt/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_lagmeter.xml b/indra/newview/skins/default/xui/pt/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_land_holdings.xml b/indra/newview/skins/default/xui/pt/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/pt/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_lsl_guide.xml b/indra/newview/skins/default/xui/pt/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_map.xml b/indra/newview/skins/default/xui/pt/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_media_browser.xml b/indra/newview/skins/default/xui/pt/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_media_settings.xml b/indra/newview/skins/default/xui/pt/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_mem_leaking.xml b/indra/newview/skins/default/xui/pt/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/pt/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_model_preview.xml b/indra/newview/skins/default/xui/pt/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_moveview.xml b/indra/newview/skins/default/xui/pt/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_mute_object.xml b/indra/newview/skins/default/xui/pt/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_my_appearance.xml b/indra/newview/skins/default/xui/pt/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_my_inventory.xml b/indra/newview/skins/default/xui/pt/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_object_weights.xml b/indra/newview/skins/default/xui/pt/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_openobject.xml b/indra/newview/skins/default/xui/pt/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/pt/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_outgoing_call.xml b/indra/newview/skins/default/xui/pt/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/pt/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/pt/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/pt/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_pay.xml b/indra/newview/skins/default/xui/pt/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_pay_object.xml b/indra/newview/skins/default/xui/pt/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_people.xml b/indra/newview/skins/default/xui/pt/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_perm_prefs.xml b/indra/newview/skins/default/xui/pt/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_picks.xml b/indra/newview/skins/default/xui/pt/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_places.xml b/indra/newview/skins/default/xui/pt/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_post_process.xml b/indra/newview/skins/default/xui/pt/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preferences.xml b/indra/newview/skins/default/xui/pt/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preview_animation.xml b/indra/newview/skins/default/xui/pt/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preview_gesture.xml b/indra/newview/skins/default/xui/pt/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preview_notecard.xml b/indra/newview/skins/default/xui/pt/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preview_sound.xml b/indra/newview/skins/default/xui/pt/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_preview_texture.xml b/indra/newview/skins/default/xui/pt/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_price_for_listing.xml b/indra/newview/skins/default/xui/pt/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_publish_classified.xml b/indra/newview/skins/default/xui/pt/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_region_debug_console.xml b/indra/newview/skins/default/xui/pt/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_region_info.xml b/indra/newview/skins/default/xui/pt/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_report_abuse.xml b/indra/newview/skins/default/xui/pt/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_script_debug.xml b/indra/newview/skins/default/xui/pt/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/pt/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_script_limits.xml b/indra/newview/skins/default/xui/pt/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_script_preview.xml b/indra/newview/skins/default/xui/pt/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_script_queue.xml b/indra/newview/skins/default/xui/pt/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_script_search.xml b/indra/newview/skins/default/xui/pt/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_search.xml b/indra/newview/skins/default/xui/pt/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_select_key.xml b/indra/newview/skins/default/xui/pt/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_sell_land.xml b/indra/newview/skins/default/xui/pt/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_settings_debug.xml b/indra/newview/skins/default/xui/pt/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_snapshot.xml b/indra/newview/skins/default/xui/pt/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_sound_devices.xml b/indra/newview/skins/default/xui/pt/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_sound_preview.xml b/indra/newview/skins/default/xui/pt/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_spellcheck.xml b/indra/newview/skins/default/xui/pt/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/pt/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_stats.xml b/indra/newview/skins/default/xui/pt/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_sys_well.xml b/indra/newview/skins/default/xui/pt/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_telehub.xml b/indra/newview/skins/default/xui/pt/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/pt/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/pt/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/pt/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/pt/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_tools.xml b/indra/newview/skins/default/xui/pt/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_top_objects.xml b/indra/newview/skins/default/xui/pt/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_tos.xml b/indra/newview/skins/default/xui/pt/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_toybox.xml b/indra/newview/skins/default/xui/pt/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_translation_settings.xml b/indra/newview/skins/default/xui/pt/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_url_entry.xml b/indra/newview/skins/default/xui/pt/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_voice_controls.xml b/indra/newview/skins/default/xui/pt/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_voice_effect.xml b/indra/newview/skins/default/xui/pt/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_web_content.xml b/indra/newview/skins/default/xui/pt/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/pt/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_window_size.xml b/indra/newview/skins/default/xui/pt/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/floater_world_map.xml b/indra/newview/skins/default/xui/pt/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/inspect_avatar.xml b/indra/newview/skins/default/xui/pt/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/inspect_group.xml b/indra/newview/skins/default/xui/pt/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/inspect_object.xml b/indra/newview/skins/default/xui/pt/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/inspect_remote_object.xml b/indra/newview/skins/default/xui/pt/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/language_settings.xml b/indra/newview/skins/default/xui/pt/language_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/pt/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_attachment_other.xml b/indra/newview/skins/default/xui/pt/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_attachment_self.xml b/indra/newview/skins/default/xui/pt/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_avatar_icon.xml b/indra/newview/skins/default/xui/pt/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_avatar_other.xml b/indra/newview/skins/default/xui/pt/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_avatar_self.xml b/indra/newview/skins/default/xui/pt/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_cof_attachment.xml b/indra/newview/skins/default/xui/pt/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_cof_body_part.xml b/indra/newview/skins/default/xui/pt/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_cof_clothing.xml b/indra/newview/skins/default/xui/pt/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_cof_gear.xml b/indra/newview/skins/default/xui/pt/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_edit.xml b/indra/newview/skins/default/xui/pt/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_favorites.xml b/indra/newview/skins/default/xui/pt/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_gesture_gear.xml b/indra/newview/skins/default/xui/pt/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_group_plus.xml b/indra/newview/skins/default/xui/pt/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_hide_navbar.xml b/indra/newview/skins/default/xui/pt/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/pt/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/pt/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/pt/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/pt/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/pt/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/pt/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/pt/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inventory.xml b/indra/newview/skins/default/xui/pt/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inventory_add.xml b/indra/newview/skins/default/xui/pt/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/pt/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_land.xml b/indra/newview/skins/default/xui/pt/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_landmark.xml b/indra/newview/skins/default/xui/pt/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_login.xml b/indra/newview/skins/default/xui/pt/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_media_ctrl.xml b/indra/newview/skins/default/xui/pt/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_mini_map.xml b/indra/newview/skins/default/xui/pt/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/pt/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_navbar.xml b/indra/newview/skins/default/xui/pt/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_nearby_chat.xml b/indra/newview/skins/default/xui/pt/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_notification_well_button.xml b/indra/newview/skins/default/xui/pt/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_object.xml b/indra/newview/skins/default/xui/pt/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_object_icon.xml b/indra/newview/skins/default/xui/pt/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_outfit_gear.xml b/indra/newview/skins/default/xui/pt/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_outfit_tab.xml b/indra/newview/skins/default/xui/pt/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_participant_list.xml b/indra/newview/skins/default/xui/pt/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/pt/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_groups.xml b/indra/newview/skins/default/xui/pt/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/pt/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_nearby.xml b/indra/newview/skins/default/xui/pt/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/pt/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/pt/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/pt/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_picks.xml b/indra/newview/skins/default/xui/pt/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_picks_plus.xml b/indra/newview/skins/default/xui/pt/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_place.xml b/indra/newview/skins/default/xui/pt/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_place_add_button.xml b/indra/newview/skins/default/xui/pt/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/pt/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/pt/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_profile_overflow.xml b/indra/newview/skins/default/xui/pt/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_save_outfit.xml b/indra/newview/skins/default/xui/pt/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_script_chiclet.xml b/indra/newview/skins/default/xui/pt/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_slurl.xml b/indra/newview/skins/default/xui/pt/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/pt/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/pt/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/pt/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_text_editor.xml b/indra/newview/skins/default/xui/pt/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_toolbars.xml b/indra/newview/skins/default/xui/pt/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_topinfobar.xml b/indra/newview/skins/default/xui/pt/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_agent.xml b/indra/newview/skins/default/xui/pt/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_group.xml b/indra/newview/skins/default/xui/pt/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_http.xml b/indra/newview/skins/default/xui/pt/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_inventory.xml b/indra/newview/skins/default/xui/pt/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_map.xml b/indra/newview/skins/default/xui/pt/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_objectim.xml b/indra/newview/skins/default/xui/pt/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_parcel.xml b/indra/newview/skins/default/xui/pt/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_slapp.xml b/indra/newview/skins/default/xui/pt/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_slurl.xml b/indra/newview/skins/default/xui/pt/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_url_teleport.xml b/indra/newview/skins/default/xui/pt/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_viewer.xml b/indra/newview/skins/default/xui/pt/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/pt/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_wearing_gear.xml b/indra/newview/skins/default/xui/pt/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/menu_wearing_tab.xml b/indra/newview/skins/default/xui/pt/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/mime_types.xml b/indra/newview/skins/default/xui/pt/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/mime_types_linux.xml b/indra/newview/skins/default/xui/pt/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/mime_types_mac.xml b/indra/newview/skins/default/xui/pt/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/notifications.xml b/indra/newview/skins/default/xui/pt/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/outfit_accordion_tab.xml b/indra/newview/skins/default/xui/pt/outfit_accordion_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_active_object_row.xml b/indra/newview/skins/default/xui/pt/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/pt/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/pt/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/pt/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/pt/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/pt/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/pt/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/pt/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_classified_info.xml b/indra/newview/skins/default/xui/pt/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/pt/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/pt/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_cof_wearables.xml b/indra/newview/skins/default/xui/pt/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/pt/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/pt/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_alpha.xml b/indra/newview/skins/default/xui/pt/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_classified.xml b/indra/newview/skins/default/xui/pt/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_eyes.xml b/indra/newview/skins/default/xui/pt/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_gloves.xml b/indra/newview/skins/default/xui/pt/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_hair.xml b/indra/newview/skins/default/xui/pt/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_jacket.xml b/indra/newview/skins/default/xui/pt/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_pants.xml b/indra/newview/skins/default/xui/pt/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_physics.xml b/indra/newview/skins/default/xui/pt/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_pick.xml b/indra/newview/skins/default/xui/pt/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_profile.xml b/indra/newview/skins/default/xui/pt/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_shape.xml b/indra/newview/skins/default/xui/pt/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_shirt.xml b/indra/newview/skins/default/xui/pt/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_shoes.xml b/indra/newview/skins/default/xui/pt/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_skin.xml b/indra/newview/skins/default/xui/pt/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_skirt.xml b/indra/newview/skins/default/xui/pt/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_socks.xml b/indra/newview/skins/default/xui/pt/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/pt/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_underpants.xml b/indra/newview/skins/default/xui/pt/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/pt/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_edit_wearable.xml b/indra/newview/skins/default/xui/pt/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_control_panel.xml b/indra/newview/skins/default/xui/pt/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_general.xml b/indra/newview/skins/default/xui/pt/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/pt/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_invite.xml b/indra/newview/skins/default/xui/pt/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_land_money.xml b/indra/newview/skins/default/xui/pt/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_list_item.xml b/indra/newview/skins/default/xui/pt/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_notices.xml b/indra/newview/skins/default/xui/pt/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_notify.xml b/indra/newview/skins/default/xui/pt/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_group_roles.xml b/indra/newview/skins/default/xui/pt/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_im_control_panel.xml b/indra/newview/skins/default/xui/pt/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_inventory_item.xml b/indra/newview/skins/default/xui/pt/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_landmark_info.xml b/indra/newview/skins/default/xui/pt/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_landmarks.xml b/indra/newview/skins/default/xui/pt/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_login.xml b/indra/newview/skins/default/xui/pt/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_main_inventory.xml b/indra/newview/skins/default/xui/pt/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_me.xml b/indra/newview/skins/default/xui/pt/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_media_settings_general.xml b/indra/newview/skins/default/xui/pt/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/pt/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_media_settings_security.xml b/indra/newview/skins/default/xui/pt/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_navigation_bar.xml b/indra/newview/skins/default/xui/pt/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_nearby_chat.xml b/indra/newview/skins/default/xui/pt/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/pt/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_nearby_media.xml b/indra/newview/skins/default/xui/pt/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_notify_textbox.xml b/indra/newview/skins/default/xui/pt/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_online_status_toast.xml b/indra/newview/skins/default/xui/pt/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_outfit_edit.xml b/indra/newview/skins/default/xui/pt/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/pt/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/pt/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_outfits_list.xml b/indra/newview/skins/default/xui/pt/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/pt/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_people.xml b/indra/newview/skins/default/xui/pt/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_pick_info.xml b/indra/newview/skins/default/xui/pt/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_picks.xml b/indra/newview/skins/default/xui/pt/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_place_profile.xml b/indra/newview/skins/default/xui/pt/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_places.xml b/indra/newview/skins/default/xui/pt/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_postcard_message.xml b/indra/newview/skins/default/xui/pt/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_postcard_settings.xml b/indra/newview/skins/default/xui/pt/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/pt/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/pt/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_chat.xml b/indra/newview/skins/default/xui/pt/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_colors.xml b/indra/newview/skins/default/xui/pt/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_general.xml b/indra/newview/skins/default/xui/pt/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/pt/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_move.xml b/indra/newview/skins/default/xui/pt/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/pt/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_setup.xml b/indra/newview/skins/default/xui/pt/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_sound.xml b/indra/newview/skins/default/xui/pt/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/pt/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_region_covenant.xml b/indra/newview/skins/default/xui/pt/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_region_debug.xml b/indra/newview/skins/default/xui/pt/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_region_environment.xml b/indra/newview/skins/default/xui/pt/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_region_estate.xml b/indra/newview/skins/default/xui/pt/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_region_general.xml b/indra/newview/skins/default/xui/pt/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_region_terrain.xml b/indra/newview/skins/default/xui/pt/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_script_ed.xml b/indra/newview/skins/default/xui/pt/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/pt/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/pt/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_script_question_toast.xml b/indra/newview/skins/default/xui/pt/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_scrolling_param.xml b/indra/newview/skins/default/xui/pt/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/pt/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/pt/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/pt/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_snapshot_local.xml b/indra/newview/skins/default/xui/pt/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_snapshot_options.xml b/indra/newview/skins/default/xui/pt/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/pt/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/pt/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_sound_devices.xml b/indra/newview/skins/default/xui/pt/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/pt/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_status_bar.xml b/indra/newview/skins/default/xui/pt/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_teleport_history.xml b/indra/newview/skins/default/xui/pt/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/pt/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_voice_effect.xml b/indra/newview/skins/default/xui/pt/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/pt/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/panel_world_map.xml b/indra/newview/skins/default/xui/pt/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/role_actions.xml b/indra/newview/skins/default/xui/pt/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/sidepanel_appearance.xml b/indra/newview/skins/default/xui/pt/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/sidepanel_inventory.xml b/indra/newview/skins/default/xui/pt/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/sidepanel_item_info.xml b/indra/newview/skins/default/xui/pt/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/sidepanel_task_info.xml b/indra/newview/skins/default/xui/pt/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/strings.xml b/indra/newview/skins/default/xui/pt/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/teleport_strings.xml b/indra/newview/skins/default/xui/pt/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/pt/xui_version.xml b/indra/newview/skins/default/xui/pt/xui_version.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_aaa.xml b/indra/newview/skins/default/xui/ru/floater_aaa.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_about.xml b/indra/newview/skins/default/xui/ru/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_about_land.xml b/indra/newview/skins/default/xui/ru/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_activeim.xml b/indra/newview/skins/default/xui/ru/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/ru/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/ru/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_auction.xml b/indra/newview/skins/default/xui/ru/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_autoreplace.xml b/indra/newview/skins/default/xui/ru/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_avatar.xml b/indra/newview/skins/default/xui/ru/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_avatar_picker.xml b/indra/newview/skins/default/xui/ru/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_avatar_textures.xml b/indra/newview/skins/default/xui/ru/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_beacons.xml b/indra/newview/skins/default/xui/ru/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_build_options.xml b/indra/newview/skins/default/xui/ru/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_bulk_perms.xml b/indra/newview/skins/default/xui/ru/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_bumps.xml b/indra/newview/skins/default/xui/ru/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_buy_contents.xml b/indra/newview/skins/default/xui/ru/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_buy_currency.xml b/indra/newview/skins/default/xui/ru/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/ru/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_buy_land.xml b/indra/newview/skins/default/xui/ru/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_buy_object.xml b/indra/newview/skins/default/xui/ru/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_camera.xml b/indra/newview/skins/default/xui/ru/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_chat_bar.xml b/indra/newview/skins/default/xui/ru/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_choose_group.xml b/indra/newview/skins/default/xui/ru/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_color_picker.xml b/indra/newview/skins/default/xui/ru/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_critical.xml b/indra/newview/skins/default/xui/ru/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/ru/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_destinations.xml b/indra/newview/skins/default/xui/ru/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_display_name.xml b/indra/newview/skins/default/xui/ru/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/ru/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/ru/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/ru/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_environment_settings.xml b/indra/newview/skins/default/xui/ru/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_event.xml b/indra/newview/skins/default/xui/ru/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_fast_timers.xml b/indra/newview/skins/default/xui/ru/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_font_test.xml b/indra/newview/skins/default/xui/ru/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_gesture.xml b/indra/newview/skins/default/xui/ru/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_god_tools.xml b/indra/newview/skins/default/xui/ru/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_hardware_settings.xml b/indra/newview/skins/default/xui/ru/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_help_browser.xml b/indra/newview/skins/default/xui/ru/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_how_to.xml b/indra/newview/skins/default/xui/ru/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_hud.xml b/indra/newview/skins/default/xui/ru/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_im_container.xml b/indra/newview/skins/default/xui/ru/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_im_session.xml b/indra/newview/skins/default/xui/ru/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_image_preview.xml b/indra/newview/skins/default/xui/ru/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_import_collada.xml b/indra/newview/skins/default/xui/ru/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_incoming_call.xml b/indra/newview/skins/default/xui/ru/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_inspect.xml b/indra/newview/skins/default/xui/ru/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/ru/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/ru/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_joystick.xml b/indra/newview/skins/default/xui/ru/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_lagmeter.xml b/indra/newview/skins/default/xui/ru/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_land_holdings.xml b/indra/newview/skins/default/xui/ru/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/ru/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_lsl_guide.xml b/indra/newview/skins/default/xui/ru/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_map.xml b/indra/newview/skins/default/xui/ru/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_media_browser.xml b/indra/newview/skins/default/xui/ru/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_media_settings.xml b/indra/newview/skins/default/xui/ru/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_mem_leaking.xml b/indra/newview/skins/default/xui/ru/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/ru/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_model_preview.xml b/indra/newview/skins/default/xui/ru/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_moveview.xml b/indra/newview/skins/default/xui/ru/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_mute_object.xml b/indra/newview/skins/default/xui/ru/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_my_appearance.xml b/indra/newview/skins/default/xui/ru/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_my_inventory.xml b/indra/newview/skins/default/xui/ru/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_notification.xml b/indra/newview/skins/default/xui/ru/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_notifications_console.xml b/indra/newview/skins/default/xui/ru/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_object_weights.xml b/indra/newview/skins/default/xui/ru/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_openobject.xml b/indra/newview/skins/default/xui/ru/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/ru/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_outgoing_call.xml b/indra/newview/skins/default/xui/ru/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/ru/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/ru/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/ru/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_pay.xml b/indra/newview/skins/default/xui/ru/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_pay_object.xml b/indra/newview/skins/default/xui/ru/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_people.xml b/indra/newview/skins/default/xui/ru/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_perm_prefs.xml b/indra/newview/skins/default/xui/ru/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_picks.xml b/indra/newview/skins/default/xui/ru/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_places.xml b/indra/newview/skins/default/xui/ru/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_post_process.xml b/indra/newview/skins/default/xui/ru/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preferences.xml b/indra/newview/skins/default/xui/ru/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/ru/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preview_animation.xml b/indra/newview/skins/default/xui/ru/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preview_gesture.xml b/indra/newview/skins/default/xui/ru/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preview_notecard.xml b/indra/newview/skins/default/xui/ru/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preview_sound.xml b/indra/newview/skins/default/xui/ru/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_preview_texture.xml b/indra/newview/skins/default/xui/ru/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_price_for_listing.xml b/indra/newview/skins/default/xui/ru/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_publish_classified.xml b/indra/newview/skins/default/xui/ru/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_region_debug_console.xml b/indra/newview/skins/default/xui/ru/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_region_info.xml b/indra/newview/skins/default/xui/ru/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_report_abuse.xml b/indra/newview/skins/default/xui/ru/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_script_debug.xml b/indra/newview/skins/default/xui/ru/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/ru/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_script_limits.xml b/indra/newview/skins/default/xui/ru/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_script_preview.xml b/indra/newview/skins/default/xui/ru/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_script_queue.xml b/indra/newview/skins/default/xui/ru/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_script_search.xml b/indra/newview/skins/default/xui/ru/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_search.xml b/indra/newview/skins/default/xui/ru/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_select_key.xml b/indra/newview/skins/default/xui/ru/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_sell_land.xml b/indra/newview/skins/default/xui/ru/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_settings_debug.xml b/indra/newview/skins/default/xui/ru/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_snapshot.xml b/indra/newview/skins/default/xui/ru/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_sound_devices.xml b/indra/newview/skins/default/xui/ru/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_sound_preview.xml b/indra/newview/skins/default/xui/ru/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_spellcheck.xml b/indra/newview/skins/default/xui/ru/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/ru/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_stats.xml b/indra/newview/skins/default/xui/ru/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_sys_well.xml b/indra/newview/skins/default/xui/ru/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_telehub.xml b/indra/newview/skins/default/xui/ru/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/ru/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/ru/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/ru/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/ru/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_tools.xml b/indra/newview/skins/default/xui/ru/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_top_objects.xml b/indra/newview/skins/default/xui/ru/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_tos.xml b/indra/newview/skins/default/xui/ru/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_toybox.xml b/indra/newview/skins/default/xui/ru/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_translation_settings.xml b/indra/newview/skins/default/xui/ru/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_url_entry.xml b/indra/newview/skins/default/xui/ru/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_voice_controls.xml b/indra/newview/skins/default/xui/ru/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_voice_effect.xml b/indra/newview/skins/default/xui/ru/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_web_content.xml b/indra/newview/skins/default/xui/ru/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/ru/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_window_size.xml b/indra/newview/skins/default/xui/ru/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/floater_world_map.xml b/indra/newview/skins/default/xui/ru/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/inspect_avatar.xml b/indra/newview/skins/default/xui/ru/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/inspect_group.xml b/indra/newview/skins/default/xui/ru/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/inspect_object.xml b/indra/newview/skins/default/xui/ru/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/inspect_remote_object.xml b/indra/newview/skins/default/xui/ru/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/ru/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_attachment_other.xml b/indra/newview/skins/default/xui/ru/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_attachment_self.xml b/indra/newview/skins/default/xui/ru/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_avatar_icon.xml b/indra/newview/skins/default/xui/ru/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_avatar_other.xml b/indra/newview/skins/default/xui/ru/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_avatar_self.xml b/indra/newview/skins/default/xui/ru/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_cof_attachment.xml b/indra/newview/skins/default/xui/ru/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_cof_body_part.xml b/indra/newview/skins/default/xui/ru/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_cof_clothing.xml b/indra/newview/skins/default/xui/ru/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_cof_gear.xml b/indra/newview/skins/default/xui/ru/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_edit.xml b/indra/newview/skins/default/xui/ru/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_favorites.xml b/indra/newview/skins/default/xui/ru/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_gesture_gear.xml b/indra/newview/skins/default/xui/ru/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_group_plus.xml b/indra/newview/skins/default/xui/ru/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_hide_navbar.xml b/indra/newview/skins/default/xui/ru/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/ru/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/ru/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/ru/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/ru/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/ru/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/ru/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/ru/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inventory.xml b/indra/newview/skins/default/xui/ru/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inventory_add.xml b/indra/newview/skins/default/xui/ru/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/ru/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_land.xml b/indra/newview/skins/default/xui/ru/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_landmark.xml b/indra/newview/skins/default/xui/ru/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_login.xml b/indra/newview/skins/default/xui/ru/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_media_ctrl.xml b/indra/newview/skins/default/xui/ru/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_mini_map.xml b/indra/newview/skins/default/xui/ru/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/ru/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_navbar.xml b/indra/newview/skins/default/xui/ru/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_nearby_chat.xml b/indra/newview/skins/default/xui/ru/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_notification_well_button.xml b/indra/newview/skins/default/xui/ru/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_object.xml b/indra/newview/skins/default/xui/ru/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_object_icon.xml b/indra/newview/skins/default/xui/ru/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_outfit_gear.xml b/indra/newview/skins/default/xui/ru/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_outfit_tab.xml b/indra/newview/skins/default/xui/ru/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_participant_list.xml b/indra/newview/skins/default/xui/ru/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/ru/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_groups.xml b/indra/newview/skins/default/xui/ru/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/ru/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_nearby.xml b/indra/newview/skins/default/xui/ru/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/ru/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/ru/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/ru/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_picks.xml b/indra/newview/skins/default/xui/ru/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_picks_plus.xml b/indra/newview/skins/default/xui/ru/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_place.xml b/indra/newview/skins/default/xui/ru/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_place_add_button.xml b/indra/newview/skins/default/xui/ru/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/ru/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/ru/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_profile_overflow.xml b/indra/newview/skins/default/xui/ru/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_save_outfit.xml b/indra/newview/skins/default/xui/ru/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_script_chiclet.xml b/indra/newview/skins/default/xui/ru/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_slurl.xml b/indra/newview/skins/default/xui/ru/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/ru/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/ru/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/ru/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_text_editor.xml b/indra/newview/skins/default/xui/ru/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_toolbars.xml b/indra/newview/skins/default/xui/ru/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_topinfobar.xml b/indra/newview/skins/default/xui/ru/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_agent.xml b/indra/newview/skins/default/xui/ru/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_group.xml b/indra/newview/skins/default/xui/ru/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_http.xml b/indra/newview/skins/default/xui/ru/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_inventory.xml b/indra/newview/skins/default/xui/ru/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_map.xml b/indra/newview/skins/default/xui/ru/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_objectim.xml b/indra/newview/skins/default/xui/ru/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_parcel.xml b/indra/newview/skins/default/xui/ru/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_slapp.xml b/indra/newview/skins/default/xui/ru/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_slurl.xml b/indra/newview/skins/default/xui/ru/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_url_teleport.xml b/indra/newview/skins/default/xui/ru/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_viewer.xml b/indra/newview/skins/default/xui/ru/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/ru/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_wearing_gear.xml b/indra/newview/skins/default/xui/ru/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/menu_wearing_tab.xml b/indra/newview/skins/default/xui/ru/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/mime_types.xml b/indra/newview/skins/default/xui/ru/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/mime_types_linux.xml b/indra/newview/skins/default/xui/ru/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/mime_types_mac.xml b/indra/newview/skins/default/xui/ru/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/notifications.xml b/indra/newview/skins/default/xui/ru/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_active_object_row.xml b/indra/newview/skins/default/xui/ru/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/ru/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/ru/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_avatar_tag.xml b/indra/newview/skins/default/xui/ru/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/ru/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/ru/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/ru/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/ru/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_chat_header.xml b/indra/newview/skins/default/xui/ru/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/ru/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_classified_info.xml b/indra/newview/skins/default/xui/ru/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/ru/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/ru/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_cof_wearables.xml b/indra/newview/skins/default/xui/ru/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/ru/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/ru/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_alpha.xml b/indra/newview/skins/default/xui/ru/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_classified.xml b/indra/newview/skins/default/xui/ru/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_eyes.xml b/indra/newview/skins/default/xui/ru/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_gloves.xml b/indra/newview/skins/default/xui/ru/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_hair.xml b/indra/newview/skins/default/xui/ru/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_jacket.xml b/indra/newview/skins/default/xui/ru/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_pants.xml b/indra/newview/skins/default/xui/ru/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_physics.xml b/indra/newview/skins/default/xui/ru/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_pick.xml b/indra/newview/skins/default/xui/ru/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_profile.xml b/indra/newview/skins/default/xui/ru/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_shape.xml b/indra/newview/skins/default/xui/ru/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_shirt.xml b/indra/newview/skins/default/xui/ru/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_shoes.xml b/indra/newview/skins/default/xui/ru/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_skin.xml b/indra/newview/skins/default/xui/ru/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_skirt.xml b/indra/newview/skins/default/xui/ru/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_socks.xml b/indra/newview/skins/default/xui/ru/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/ru/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_underpants.xml b/indra/newview/skins/default/xui/ru/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/ru/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_edit_wearable.xml b/indra/newview/skins/default/xui/ru/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_control_panel.xml b/indra/newview/skins/default/xui/ru/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_general.xml b/indra/newview/skins/default/xui/ru/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/ru/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_invite.xml b/indra/newview/skins/default/xui/ru/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_land_money.xml b/indra/newview/skins/default/xui/ru/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_list_item.xml b/indra/newview/skins/default/xui/ru/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_notices.xml b/indra/newview/skins/default/xui/ru/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_notify.xml b/indra/newview/skins/default/xui/ru/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_group_roles.xml b/indra/newview/skins/default/xui/ru/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_im_control_panel.xml b/indra/newview/skins/default/xui/ru/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_instant_message.xml b/indra/newview/skins/default/xui/ru/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_inventory_item.xml b/indra/newview/skins/default/xui/ru/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_landmark_info.xml b/indra/newview/skins/default/xui/ru/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_landmarks.xml b/indra/newview/skins/default/xui/ru/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_login.xml b/indra/newview/skins/default/xui/ru/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_main_inventory.xml b/indra/newview/skins/default/xui/ru/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_me.xml b/indra/newview/skins/default/xui/ru/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_media_settings_general.xml b/indra/newview/skins/default/xui/ru/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/ru/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_media_settings_security.xml b/indra/newview/skins/default/xui/ru/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_navigation_bar.xml b/indra/newview/skins/default/xui/ru/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_nearby_chat.xml b/indra/newview/skins/default/xui/ru/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/ru/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_nearby_media.xml b/indra/newview/skins/default/xui/ru/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_notify_textbox.xml b/indra/newview/skins/default/xui/ru/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_online_status_toast.xml b/indra/newview/skins/default/xui/ru/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/ru/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_outfit_edit.xml b/indra/newview/skins/default/xui/ru/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/ru/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/ru/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_outfits_list.xml b/indra/newview/skins/default/xui/ru/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/ru/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_people.xml b/indra/newview/skins/default/xui/ru/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_pick_info.xml b/indra/newview/skins/default/xui/ru/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_picks.xml b/indra/newview/skins/default/xui/ru/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_place_profile.xml b/indra/newview/skins/default/xui/ru/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_places.xml b/indra/newview/skins/default/xui/ru/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_postcard_message.xml b/indra/newview/skins/default/xui/ru/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_postcard_settings.xml b/indra/newview/skins/default/xui/ru/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/ru/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/ru/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_chat.xml b/indra/newview/skins/default/xui/ru/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_colors.xml b/indra/newview/skins/default/xui/ru/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_general.xml b/indra/newview/skins/default/xui/ru/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/ru/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_move.xml b/indra/newview/skins/default/xui/ru/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/ru/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_setup.xml b/indra/newview/skins/default/xui/ru/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_preferences_sound.xml b/indra/newview/skins/default/xui/ru/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/ru/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_region_covenant.xml b/indra/newview/skins/default/xui/ru/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_region_debug.xml b/indra/newview/skins/default/xui/ru/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_region_environment.xml b/indra/newview/skins/default/xui/ru/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_region_estate.xml b/indra/newview/skins/default/xui/ru/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_region_general.xml b/indra/newview/skins/default/xui/ru/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_region_terrain.xml b/indra/newview/skins/default/xui/ru/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_script_ed.xml b/indra/newview/skins/default/xui/ru/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/ru/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/ru/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_script_question_toast.xml b/indra/newview/skins/default/xui/ru/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_scrolling_param.xml b/indra/newview/skins/default/xui/ru/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/ru/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/ru/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/ru/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_snapshot_local.xml b/indra/newview/skins/default/xui/ru/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_snapshot_options.xml b/indra/newview/skins/default/xui/ru/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/ru/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/ru/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_sound_devices.xml b/indra/newview/skins/default/xui/ru/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/ru/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_status_bar.xml b/indra/newview/skins/default/xui/ru/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_teleport_history.xml b/indra/newview/skins/default/xui/ru/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/ru/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_voice_effect.xml b/indra/newview/skins/default/xui/ru/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/ru/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/panel_world_map.xml b/indra/newview/skins/default/xui/ru/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/role_actions.xml b/indra/newview/skins/default/xui/ru/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/sidepanel_appearance.xml b/indra/newview/skins/default/xui/ru/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/sidepanel_inventory.xml b/indra/newview/skins/default/xui/ru/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/sidepanel_item_info.xml b/indra/newview/skins/default/xui/ru/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/sidepanel_task_info.xml b/indra/newview/skins/default/xui/ru/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/strings.xml b/indra/newview/skins/default/xui/ru/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/ru/teleport_strings.xml b/indra/newview/skins/default/xui/ru/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_aaa.xml b/indra/newview/skins/default/xui/tr/floater_aaa.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_about.xml b/indra/newview/skins/default/xui/tr/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_about_land.xml b/indra/newview/skins/default/xui/tr/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_activeim.xml b/indra/newview/skins/default/xui/tr/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/tr/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/tr/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_auction.xml b/indra/newview/skins/default/xui/tr/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_autoreplace.xml b/indra/newview/skins/default/xui/tr/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_avatar.xml b/indra/newview/skins/default/xui/tr/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_avatar_picker.xml b/indra/newview/skins/default/xui/tr/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_avatar_textures.xml b/indra/newview/skins/default/xui/tr/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_beacons.xml b/indra/newview/skins/default/xui/tr/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_build_options.xml b/indra/newview/skins/default/xui/tr/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_bulk_perms.xml b/indra/newview/skins/default/xui/tr/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_bumps.xml b/indra/newview/skins/default/xui/tr/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_buy_contents.xml b/indra/newview/skins/default/xui/tr/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_buy_currency.xml b/indra/newview/skins/default/xui/tr/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/tr/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_buy_land.xml b/indra/newview/skins/default/xui/tr/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_buy_object.xml b/indra/newview/skins/default/xui/tr/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_camera.xml b/indra/newview/skins/default/xui/tr/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_chat_bar.xml b/indra/newview/skins/default/xui/tr/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_choose_group.xml b/indra/newview/skins/default/xui/tr/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_color_picker.xml b/indra/newview/skins/default/xui/tr/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_critical.xml b/indra/newview/skins/default/xui/tr/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/tr/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_destinations.xml b/indra/newview/skins/default/xui/tr/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_display_name.xml b/indra/newview/skins/default/xui/tr/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/tr/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/tr/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/tr/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_environment_settings.xml b/indra/newview/skins/default/xui/tr/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_event.xml b/indra/newview/skins/default/xui/tr/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_fast_timers.xml b/indra/newview/skins/default/xui/tr/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_font_test.xml b/indra/newview/skins/default/xui/tr/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_gesture.xml b/indra/newview/skins/default/xui/tr/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_god_tools.xml b/indra/newview/skins/default/xui/tr/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_hardware_settings.xml b/indra/newview/skins/default/xui/tr/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_help_browser.xml b/indra/newview/skins/default/xui/tr/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_how_to.xml b/indra/newview/skins/default/xui/tr/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_hud.xml b/indra/newview/skins/default/xui/tr/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_im_container.xml b/indra/newview/skins/default/xui/tr/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_im_session.xml b/indra/newview/skins/default/xui/tr/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_image_preview.xml b/indra/newview/skins/default/xui/tr/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_import_collada.xml b/indra/newview/skins/default/xui/tr/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_incoming_call.xml b/indra/newview/skins/default/xui/tr/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_inspect.xml b/indra/newview/skins/default/xui/tr/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/tr/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/tr/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_joystick.xml b/indra/newview/skins/default/xui/tr/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_lagmeter.xml b/indra/newview/skins/default/xui/tr/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_land_holdings.xml b/indra/newview/skins/default/xui/tr/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/tr/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_lsl_guide.xml b/indra/newview/skins/default/xui/tr/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_map.xml b/indra/newview/skins/default/xui/tr/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_media_browser.xml b/indra/newview/skins/default/xui/tr/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_media_settings.xml b/indra/newview/skins/default/xui/tr/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_mem_leaking.xml b/indra/newview/skins/default/xui/tr/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/tr/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_model_preview.xml b/indra/newview/skins/default/xui/tr/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_moveview.xml b/indra/newview/skins/default/xui/tr/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_mute_object.xml b/indra/newview/skins/default/xui/tr/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_my_appearance.xml b/indra/newview/skins/default/xui/tr/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_my_inventory.xml b/indra/newview/skins/default/xui/tr/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_notification.xml b/indra/newview/skins/default/xui/tr/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_notifications_console.xml b/indra/newview/skins/default/xui/tr/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_object_weights.xml b/indra/newview/skins/default/xui/tr/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_openobject.xml b/indra/newview/skins/default/xui/tr/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/tr/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_outgoing_call.xml b/indra/newview/skins/default/xui/tr/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/tr/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/tr/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/tr/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_pay.xml b/indra/newview/skins/default/xui/tr/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_pay_object.xml b/indra/newview/skins/default/xui/tr/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_people.xml b/indra/newview/skins/default/xui/tr/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_perm_prefs.xml b/indra/newview/skins/default/xui/tr/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_picks.xml b/indra/newview/skins/default/xui/tr/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_places.xml b/indra/newview/skins/default/xui/tr/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_post_process.xml b/indra/newview/skins/default/xui/tr/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preferences.xml b/indra/newview/skins/default/xui/tr/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/tr/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preview_animation.xml b/indra/newview/skins/default/xui/tr/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preview_gesture.xml b/indra/newview/skins/default/xui/tr/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preview_notecard.xml b/indra/newview/skins/default/xui/tr/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preview_sound.xml b/indra/newview/skins/default/xui/tr/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_preview_texture.xml b/indra/newview/skins/default/xui/tr/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_price_for_listing.xml b/indra/newview/skins/default/xui/tr/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_publish_classified.xml b/indra/newview/skins/default/xui/tr/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_region_debug_console.xml b/indra/newview/skins/default/xui/tr/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_region_info.xml b/indra/newview/skins/default/xui/tr/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_report_abuse.xml b/indra/newview/skins/default/xui/tr/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_script_debug.xml b/indra/newview/skins/default/xui/tr/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/tr/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_script_limits.xml b/indra/newview/skins/default/xui/tr/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_script_preview.xml b/indra/newview/skins/default/xui/tr/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_script_queue.xml b/indra/newview/skins/default/xui/tr/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_script_search.xml b/indra/newview/skins/default/xui/tr/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_search.xml b/indra/newview/skins/default/xui/tr/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_select_key.xml b/indra/newview/skins/default/xui/tr/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_sell_land.xml b/indra/newview/skins/default/xui/tr/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_settings_debug.xml b/indra/newview/skins/default/xui/tr/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_snapshot.xml b/indra/newview/skins/default/xui/tr/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_sound_devices.xml b/indra/newview/skins/default/xui/tr/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_sound_preview.xml b/indra/newview/skins/default/xui/tr/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_spellcheck.xml b/indra/newview/skins/default/xui/tr/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/tr/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_stats.xml b/indra/newview/skins/default/xui/tr/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_sys_well.xml b/indra/newview/skins/default/xui/tr/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_telehub.xml b/indra/newview/skins/default/xui/tr/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/tr/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/tr/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/tr/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/tr/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_tools.xml b/indra/newview/skins/default/xui/tr/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_top_objects.xml b/indra/newview/skins/default/xui/tr/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_tos.xml b/indra/newview/skins/default/xui/tr/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_toybox.xml b/indra/newview/skins/default/xui/tr/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_translation_settings.xml b/indra/newview/skins/default/xui/tr/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_url_entry.xml b/indra/newview/skins/default/xui/tr/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_voice_controls.xml b/indra/newview/skins/default/xui/tr/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_voice_effect.xml b/indra/newview/skins/default/xui/tr/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_web_content.xml b/indra/newview/skins/default/xui/tr/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/tr/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_window_size.xml b/indra/newview/skins/default/xui/tr/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/floater_world_map.xml b/indra/newview/skins/default/xui/tr/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/inspect_avatar.xml b/indra/newview/skins/default/xui/tr/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/inspect_group.xml b/indra/newview/skins/default/xui/tr/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/inspect_object.xml b/indra/newview/skins/default/xui/tr/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/inspect_remote_object.xml b/indra/newview/skins/default/xui/tr/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/tr/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_attachment_other.xml b/indra/newview/skins/default/xui/tr/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_attachment_self.xml b/indra/newview/skins/default/xui/tr/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_avatar_icon.xml b/indra/newview/skins/default/xui/tr/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_avatar_other.xml b/indra/newview/skins/default/xui/tr/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_avatar_self.xml b/indra/newview/skins/default/xui/tr/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_cof_attachment.xml b/indra/newview/skins/default/xui/tr/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_cof_body_part.xml b/indra/newview/skins/default/xui/tr/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_cof_clothing.xml b/indra/newview/skins/default/xui/tr/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_cof_gear.xml b/indra/newview/skins/default/xui/tr/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_edit.xml b/indra/newview/skins/default/xui/tr/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_favorites.xml b/indra/newview/skins/default/xui/tr/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_gesture_gear.xml b/indra/newview/skins/default/xui/tr/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_group_plus.xml b/indra/newview/skins/default/xui/tr/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_hide_navbar.xml b/indra/newview/skins/default/xui/tr/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/tr/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/tr/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/tr/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/tr/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/tr/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/tr/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/tr/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inventory.xml b/indra/newview/skins/default/xui/tr/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inventory_add.xml b/indra/newview/skins/default/xui/tr/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/tr/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_land.xml b/indra/newview/skins/default/xui/tr/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_landmark.xml b/indra/newview/skins/default/xui/tr/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_login.xml b/indra/newview/skins/default/xui/tr/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_media_ctrl.xml b/indra/newview/skins/default/xui/tr/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_mini_map.xml b/indra/newview/skins/default/xui/tr/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/tr/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_navbar.xml b/indra/newview/skins/default/xui/tr/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_nearby_chat.xml b/indra/newview/skins/default/xui/tr/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_notification_well_button.xml b/indra/newview/skins/default/xui/tr/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_object.xml b/indra/newview/skins/default/xui/tr/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_object_icon.xml b/indra/newview/skins/default/xui/tr/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_outfit_gear.xml b/indra/newview/skins/default/xui/tr/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_outfit_tab.xml b/indra/newview/skins/default/xui/tr/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_participant_list.xml b/indra/newview/skins/default/xui/tr/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/tr/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_groups.xml b/indra/newview/skins/default/xui/tr/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/tr/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_nearby.xml b/indra/newview/skins/default/xui/tr/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/tr/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/tr/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/tr/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_picks.xml b/indra/newview/skins/default/xui/tr/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_picks_plus.xml b/indra/newview/skins/default/xui/tr/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_place.xml b/indra/newview/skins/default/xui/tr/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_place_add_button.xml b/indra/newview/skins/default/xui/tr/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/tr/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/tr/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_profile_overflow.xml b/indra/newview/skins/default/xui/tr/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_save_outfit.xml b/indra/newview/skins/default/xui/tr/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_script_chiclet.xml b/indra/newview/skins/default/xui/tr/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_slurl.xml b/indra/newview/skins/default/xui/tr/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/tr/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/tr/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/tr/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_text_editor.xml b/indra/newview/skins/default/xui/tr/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_toolbars.xml b/indra/newview/skins/default/xui/tr/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_topinfobar.xml b/indra/newview/skins/default/xui/tr/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_agent.xml b/indra/newview/skins/default/xui/tr/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_group.xml b/indra/newview/skins/default/xui/tr/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_http.xml b/indra/newview/skins/default/xui/tr/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_inventory.xml b/indra/newview/skins/default/xui/tr/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_map.xml b/indra/newview/skins/default/xui/tr/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_objectim.xml b/indra/newview/skins/default/xui/tr/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_parcel.xml b/indra/newview/skins/default/xui/tr/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_slapp.xml b/indra/newview/skins/default/xui/tr/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_slurl.xml b/indra/newview/skins/default/xui/tr/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_url_teleport.xml b/indra/newview/skins/default/xui/tr/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_viewer.xml b/indra/newview/skins/default/xui/tr/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/tr/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_wearing_gear.xml b/indra/newview/skins/default/xui/tr/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/menu_wearing_tab.xml b/indra/newview/skins/default/xui/tr/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/mime_types.xml b/indra/newview/skins/default/xui/tr/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/mime_types_linux.xml b/indra/newview/skins/default/xui/tr/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/mime_types_mac.xml b/indra/newview/skins/default/xui/tr/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/notifications.xml b/indra/newview/skins/default/xui/tr/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_active_object_row.xml b/indra/newview/skins/default/xui/tr/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/tr/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/tr/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_avatar_tag.xml b/indra/newview/skins/default/xui/tr/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/tr/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/tr/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/tr/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/tr/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_chat_header.xml b/indra/newview/skins/default/xui/tr/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/tr/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_classified_info.xml b/indra/newview/skins/default/xui/tr/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/tr/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/tr/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_cof_wearables.xml b/indra/newview/skins/default/xui/tr/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/tr/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/tr/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_alpha.xml b/indra/newview/skins/default/xui/tr/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_classified.xml b/indra/newview/skins/default/xui/tr/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_eyes.xml b/indra/newview/skins/default/xui/tr/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_gloves.xml b/indra/newview/skins/default/xui/tr/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_hair.xml b/indra/newview/skins/default/xui/tr/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_jacket.xml b/indra/newview/skins/default/xui/tr/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_pants.xml b/indra/newview/skins/default/xui/tr/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_physics.xml b/indra/newview/skins/default/xui/tr/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_pick.xml b/indra/newview/skins/default/xui/tr/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_profile.xml b/indra/newview/skins/default/xui/tr/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_shape.xml b/indra/newview/skins/default/xui/tr/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_shirt.xml b/indra/newview/skins/default/xui/tr/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_shoes.xml b/indra/newview/skins/default/xui/tr/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_skin.xml b/indra/newview/skins/default/xui/tr/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_skirt.xml b/indra/newview/skins/default/xui/tr/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_socks.xml b/indra/newview/skins/default/xui/tr/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/tr/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_underpants.xml b/indra/newview/skins/default/xui/tr/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/tr/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_edit_wearable.xml b/indra/newview/skins/default/xui/tr/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_control_panel.xml b/indra/newview/skins/default/xui/tr/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_general.xml b/indra/newview/skins/default/xui/tr/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/tr/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_invite.xml b/indra/newview/skins/default/xui/tr/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_land_money.xml b/indra/newview/skins/default/xui/tr/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_list_item.xml b/indra/newview/skins/default/xui/tr/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_notices.xml b/indra/newview/skins/default/xui/tr/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_notify.xml b/indra/newview/skins/default/xui/tr/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_group_roles.xml b/indra/newview/skins/default/xui/tr/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_im_control_panel.xml b/indra/newview/skins/default/xui/tr/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_instant_message.xml b/indra/newview/skins/default/xui/tr/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_inventory_item.xml b/indra/newview/skins/default/xui/tr/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_landmark_info.xml b/indra/newview/skins/default/xui/tr/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_landmarks.xml b/indra/newview/skins/default/xui/tr/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_login.xml b/indra/newview/skins/default/xui/tr/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_main_inventory.xml b/indra/newview/skins/default/xui/tr/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_me.xml b/indra/newview/skins/default/xui/tr/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_media_settings_general.xml b/indra/newview/skins/default/xui/tr/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/tr/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_media_settings_security.xml b/indra/newview/skins/default/xui/tr/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_navigation_bar.xml b/indra/newview/skins/default/xui/tr/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_nearby_chat.xml b/indra/newview/skins/default/xui/tr/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/tr/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_nearby_media.xml b/indra/newview/skins/default/xui/tr/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_notify_textbox.xml b/indra/newview/skins/default/xui/tr/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_online_status_toast.xml b/indra/newview/skins/default/xui/tr/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/tr/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_outfit_edit.xml b/indra/newview/skins/default/xui/tr/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/tr/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/tr/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_outfits_list.xml b/indra/newview/skins/default/xui/tr/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/tr/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_people.xml b/indra/newview/skins/default/xui/tr/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_pick_info.xml b/indra/newview/skins/default/xui/tr/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_picks.xml b/indra/newview/skins/default/xui/tr/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_place_profile.xml b/indra/newview/skins/default/xui/tr/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_places.xml b/indra/newview/skins/default/xui/tr/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_postcard_message.xml b/indra/newview/skins/default/xui/tr/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_postcard_settings.xml b/indra/newview/skins/default/xui/tr/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/tr/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/tr/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_chat.xml b/indra/newview/skins/default/xui/tr/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_colors.xml b/indra/newview/skins/default/xui/tr/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_general.xml b/indra/newview/skins/default/xui/tr/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/tr/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_move.xml b/indra/newview/skins/default/xui/tr/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/tr/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_setup.xml b/indra/newview/skins/default/xui/tr/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_preferences_sound.xml b/indra/newview/skins/default/xui/tr/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/tr/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_region_covenant.xml b/indra/newview/skins/default/xui/tr/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_region_debug.xml b/indra/newview/skins/default/xui/tr/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_region_environment.xml b/indra/newview/skins/default/xui/tr/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_region_estate.xml b/indra/newview/skins/default/xui/tr/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_region_general.xml b/indra/newview/skins/default/xui/tr/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_region_terrain.xml b/indra/newview/skins/default/xui/tr/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_script_ed.xml b/indra/newview/skins/default/xui/tr/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/tr/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/tr/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_script_question_toast.xml b/indra/newview/skins/default/xui/tr/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_scrolling_param.xml b/indra/newview/skins/default/xui/tr/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/tr/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/tr/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/tr/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_snapshot_local.xml b/indra/newview/skins/default/xui/tr/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_snapshot_options.xml b/indra/newview/skins/default/xui/tr/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/tr/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/tr/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_sound_devices.xml b/indra/newview/skins/default/xui/tr/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/tr/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_status_bar.xml b/indra/newview/skins/default/xui/tr/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_teleport_history.xml b/indra/newview/skins/default/xui/tr/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/tr/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_voice_effect.xml b/indra/newview/skins/default/xui/tr/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/tr/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/panel_world_map.xml b/indra/newview/skins/default/xui/tr/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/role_actions.xml b/indra/newview/skins/default/xui/tr/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/sidepanel_appearance.xml b/indra/newview/skins/default/xui/tr/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/sidepanel_inventory.xml b/indra/newview/skins/default/xui/tr/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/sidepanel_item_info.xml b/indra/newview/skins/default/xui/tr/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/sidepanel_task_info.xml b/indra/newview/skins/default/xui/tr/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/strings.xml b/indra/newview/skins/default/xui/tr/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/tr/teleport_strings.xml b/indra/newview/skins/default/xui/tr/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_aaa.xml b/indra/newview/skins/default/xui/zh/floater_aaa.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_about.xml b/indra/newview/skins/default/xui/zh/floater_about.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_about_land.xml b/indra/newview/skins/default/xui/zh/floater_about_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_activeim.xml b/indra/newview/skins/default/xui/zh/floater_activeim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/zh/floater_animation_anim_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_animation_bvh_preview.xml b/indra/newview/skins/default/xui/zh/floater_animation_bvh_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_auction.xml b/indra/newview/skins/default/xui/zh/floater_auction.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_autoreplace.xml b/indra/newview/skins/default/xui/zh/floater_autoreplace.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_avatar.xml b/indra/newview/skins/default/xui/zh/floater_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_avatar_picker.xml b/indra/newview/skins/default/xui/zh/floater_avatar_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_avatar_textures.xml b/indra/newview/skins/default/xui/zh/floater_avatar_textures.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_beacons.xml b/indra/newview/skins/default/xui/zh/floater_beacons.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_build_options.xml b/indra/newview/skins/default/xui/zh/floater_build_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_bulk_perms.xml b/indra/newview/skins/default/xui/zh/floater_bulk_perms.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_bumps.xml b/indra/newview/skins/default/xui/zh/floater_bumps.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_buy_contents.xml b/indra/newview/skins/default/xui/zh/floater_buy_contents.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_buy_currency.xml b/indra/newview/skins/default/xui/zh/floater_buy_currency.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_buy_currency_html.xml b/indra/newview/skins/default/xui/zh/floater_buy_currency_html.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_buy_land.xml b/indra/newview/skins/default/xui/zh/floater_buy_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_buy_object.xml b/indra/newview/skins/default/xui/zh/floater_buy_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_camera.xml b/indra/newview/skins/default/xui/zh/floater_camera.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_chat_bar.xml b/indra/newview/skins/default/xui/zh/floater_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_choose_group.xml b/indra/newview/skins/default/xui/zh/floater_choose_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_color_picker.xml b/indra/newview/skins/default/xui/zh/floater_color_picker.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_critical.xml b/indra/newview/skins/default/xui/zh/floater_critical.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_delete_env_preset.xml b/indra/newview/skins/default/xui/zh/floater_delete_env_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_destinations.xml b/indra/newview/skins/default/xui/zh/floater_destinations.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_display_name.xml b/indra/newview/skins/default/xui/zh/floater_display_name.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_edit_day_cycle.xml b/indra/newview/skins/default/xui/zh/floater_edit_day_cycle.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/zh/floater_edit_sky_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_edit_water_preset.xml b/indra/newview/skins/default/xui/zh/floater_edit_water_preset.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_environment_settings.xml b/indra/newview/skins/default/xui/zh/floater_environment_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_event.xml b/indra/newview/skins/default/xui/zh/floater_event.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_fast_timers.xml b/indra/newview/skins/default/xui/zh/floater_fast_timers.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_font_test.xml b/indra/newview/skins/default/xui/zh/floater_font_test.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_gesture.xml b/indra/newview/skins/default/xui/zh/floater_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_god_tools.xml b/indra/newview/skins/default/xui/zh/floater_god_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_hardware_settings.xml b/indra/newview/skins/default/xui/zh/floater_hardware_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_help_browser.xml b/indra/newview/skins/default/xui/zh/floater_help_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_how_to.xml b/indra/newview/skins/default/xui/zh/floater_how_to.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_hud.xml b/indra/newview/skins/default/xui/zh/floater_hud.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_im_container.xml b/indra/newview/skins/default/xui/zh/floater_im_container.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_im_session.xml b/indra/newview/skins/default/xui/zh/floater_im_session.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_image_preview.xml b/indra/newview/skins/default/xui/zh/floater_image_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_import_collada.xml b/indra/newview/skins/default/xui/zh/floater_import_collada.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_incoming_call.xml b/indra/newview/skins/default/xui/zh/floater_incoming_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_inspect.xml b/indra/newview/skins/default/xui/zh/floater_inspect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/zh/floater_inventory_item_properties.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_joystick.xml b/indra/newview/skins/default/xui/zh/floater_joystick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_lagmeter.xml b/indra/newview/skins/default/xui/zh/floater_lagmeter.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_land_holdings.xml b/indra/newview/skins/default/xui/zh/floater_land_holdings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/zh/floater_live_lsleditor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_lsl_guide.xml b/indra/newview/skins/default/xui/zh/floater_lsl_guide.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_map.xml b/indra/newview/skins/default/xui/zh/floater_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_media_browser.xml b/indra/newview/skins/default/xui/zh/floater_media_browser.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_media_settings.xml b/indra/newview/skins/default/xui/zh/floater_media_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_mem_leaking.xml b/indra/newview/skins/default/xui/zh/floater_mem_leaking.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_merchant_outbox.xml b/indra/newview/skins/default/xui/zh/floater_merchant_outbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_model_preview.xml b/indra/newview/skins/default/xui/zh/floater_model_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_moveview.xml b/indra/newview/skins/default/xui/zh/floater_moveview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_mute_object.xml b/indra/newview/skins/default/xui/zh/floater_mute_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_my_appearance.xml b/indra/newview/skins/default/xui/zh/floater_my_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_my_inventory.xml b/indra/newview/skins/default/xui/zh/floater_my_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_notification.xml b/indra/newview/skins/default/xui/zh/floater_notification.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_notifications_console.xml b/indra/newview/skins/default/xui/zh/floater_notifications_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_object_weights.xml b/indra/newview/skins/default/xui/zh/floater_object_weights.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_openobject.xml b/indra/newview/skins/default/xui/zh/floater_openobject.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/zh/floater_outfit_save_as.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_outgoing_call.xml b/indra/newview/skins/default/xui/zh/floater_outgoing_call.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_pathfinding_characters.xml b/indra/newview/skins/default/xui/zh/floater_pathfinding_characters.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/zh/floater_pathfinding_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_pathfinding_linksets.xml b/indra/newview/skins/default/xui/zh/floater_pathfinding_linksets.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_pay.xml b/indra/newview/skins/default/xui/zh/floater_pay.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_pay_object.xml b/indra/newview/skins/default/xui/zh/floater_pay_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_people.xml b/indra/newview/skins/default/xui/zh/floater_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_perm_prefs.xml b/indra/newview/skins/default/xui/zh/floater_perm_prefs.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_picks.xml b/indra/newview/skins/default/xui/zh/floater_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_places.xml b/indra/newview/skins/default/xui/zh/floater_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_post_process.xml b/indra/newview/skins/default/xui/zh/floater_post_process.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preferences.xml b/indra/newview/skins/default/xui/zh/floater_preferences.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/zh/floater_preferences_proxy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preview_animation.xml b/indra/newview/skins/default/xui/zh/floater_preview_animation.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preview_gesture.xml b/indra/newview/skins/default/xui/zh/floater_preview_gesture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preview_notecard.xml b/indra/newview/skins/default/xui/zh/floater_preview_notecard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preview_sound.xml b/indra/newview/skins/default/xui/zh/floater_preview_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_preview_texture.xml b/indra/newview/skins/default/xui/zh/floater_preview_texture.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_price_for_listing.xml b/indra/newview/skins/default/xui/zh/floater_price_for_listing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_publish_classified.xml b/indra/newview/skins/default/xui/zh/floater_publish_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_region_debug_console.xml b/indra/newview/skins/default/xui/zh/floater_region_debug_console.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_region_info.xml b/indra/newview/skins/default/xui/zh/floater_region_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_report_abuse.xml b/indra/newview/skins/default/xui/zh/floater_report_abuse.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_script_debug.xml b/indra/newview/skins/default/xui/zh/floater_script_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/zh/floater_script_debug_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_script_limits.xml b/indra/newview/skins/default/xui/zh/floater_script_limits.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_script_preview.xml b/indra/newview/skins/default/xui/zh/floater_script_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_script_queue.xml b/indra/newview/skins/default/xui/zh/floater_script_queue.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_script_search.xml b/indra/newview/skins/default/xui/zh/floater_script_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_search.xml b/indra/newview/skins/default/xui/zh/floater_search.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_select_key.xml b/indra/newview/skins/default/xui/zh/floater_select_key.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_sell_land.xml b/indra/newview/skins/default/xui/zh/floater_sell_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_settings_debug.xml b/indra/newview/skins/default/xui/zh/floater_settings_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_snapshot.xml b/indra/newview/skins/default/xui/zh/floater_snapshot.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_sound_devices.xml b/indra/newview/skins/default/xui/zh/floater_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_sound_preview.xml b/indra/newview/skins/default/xui/zh/floater_sound_preview.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_spellcheck.xml b/indra/newview/skins/default/xui/zh/floater_spellcheck.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_spellcheck_import.xml b/indra/newview/skins/default/xui/zh/floater_spellcheck_import.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_stats.xml b/indra/newview/skins/default/xui/zh/floater_stats.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_sys_well.xml b/indra/newview/skins/default/xui/zh/floater_sys_well.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_telehub.xml b/indra/newview/skins/default/xui/zh/floater_telehub.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_test_layout_stacks.xml b/indra/newview/skins/default/xui/zh/floater_test_layout_stacks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_test_text_vertical_aligment.xml b/indra/newview/skins/default/xui/zh/floater_test_text_vertical_aligment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_texture_fetch_debugger.xml b/indra/newview/skins/default/xui/zh/floater_texture_fetch_debugger.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_tools.xml b/indra/newview/skins/default/xui/zh/floater_tools.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_top_objects.xml b/indra/newview/skins/default/xui/zh/floater_top_objects.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_tos.xml b/indra/newview/skins/default/xui/zh/floater_tos.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_toybox.xml b/indra/newview/skins/default/xui/zh/floater_toybox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_translation_settings.xml b/indra/newview/skins/default/xui/zh/floater_translation_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_url_entry.xml b/indra/newview/skins/default/xui/zh/floater_url_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_voice_controls.xml b/indra/newview/skins/default/xui/zh/floater_voice_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_voice_effect.xml b/indra/newview/skins/default/xui/zh/floater_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_web_content.xml b/indra/newview/skins/default/xui/zh/floater_web_content.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/zh/floater_whitelist_entry.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_window_size.xml b/indra/newview/skins/default/xui/zh/floater_window_size.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/floater_world_map.xml b/indra/newview/skins/default/xui/zh/floater_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/inspect_avatar.xml b/indra/newview/skins/default/xui/zh/inspect_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/inspect_group.xml b/indra/newview/skins/default/xui/zh/inspect_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/inspect_object.xml b/indra/newview/skins/default/xui/zh/inspect_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/inspect_remote_object.xml b/indra/newview/skins/default/xui/zh/inspect_remote_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_add_wearable_gear.xml b/indra/newview/skins/default/xui/zh/menu_add_wearable_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_attachment_other.xml b/indra/newview/skins/default/xui/zh/menu_attachment_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_attachment_self.xml b/indra/newview/skins/default/xui/zh/menu_attachment_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_avatar_icon.xml b/indra/newview/skins/default/xui/zh/menu_avatar_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_avatar_other.xml b/indra/newview/skins/default/xui/zh/menu_avatar_other.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_avatar_self.xml b/indra/newview/skins/default/xui/zh/menu_avatar_self.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_cof_attachment.xml b/indra/newview/skins/default/xui/zh/menu_cof_attachment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_cof_body_part.xml b/indra/newview/skins/default/xui/zh/menu_cof_body_part.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_cof_clothing.xml b/indra/newview/skins/default/xui/zh/menu_cof_clothing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_cof_gear.xml b/indra/newview/skins/default/xui/zh/menu_cof_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_edit.xml b/indra/newview/skins/default/xui/zh/menu_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_favorites.xml b/indra/newview/skins/default/xui/zh/menu_favorites.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_gesture_gear.xml b/indra/newview/skins/default/xui/zh/menu_gesture_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_group_plus.xml b/indra/newview/skins/default/xui/zh/menu_group_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_hide_navbar.xml b/indra/newview/skins/default/xui/zh/menu_hide_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/zh/menu_imchiclet_adhoc.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/zh/menu_imchiclet_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/zh/menu_imchiclet_p2p.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/zh/menu_inspect_avatar_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/zh/menu_inspect_object_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/zh/menu_inspect_self_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inv_offer_chiclet.xml b/indra/newview/skins/default/xui/zh/menu_inv_offer_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inventory.xml b/indra/newview/skins/default/xui/zh/menu_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inventory_add.xml b/indra/newview/skins/default/xui/zh/menu_inventory_add.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_land.xml b/indra/newview/skins/default/xui/zh/menu_land.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_landmark.xml b/indra/newview/skins/default/xui/zh/menu_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_login.xml b/indra/newview/skins/default/xui/zh/menu_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_media_ctrl.xml b/indra/newview/skins/default/xui/zh/menu_media_ctrl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_mini_map.xml b/indra/newview/skins/default/xui/zh/menu_mini_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_model_import_gear_default.xml b/indra/newview/skins/default/xui/zh/menu_model_import_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_navbar.xml b/indra/newview/skins/default/xui/zh/menu_navbar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_nearby_chat.xml b/indra/newview/skins/default/xui/zh/menu_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_notification_well_button.xml b/indra/newview/skins/default/xui/zh/menu_notification_well_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_object.xml b/indra/newview/skins/default/xui/zh/menu_object.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_object_icon.xml b/indra/newview/skins/default/xui/zh/menu_object_icon.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_outfit_gear.xml b/indra/newview/skins/default/xui/zh/menu_outfit_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_outfit_tab.xml b/indra/newview/skins/default/xui/zh/menu_outfit_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_participant_list.xml b/indra/newview/skins/default/xui/zh/menu_participant_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/zh/menu_people_friends_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_groups.xml b/indra/newview/skins/default/xui/zh/menu_people_groups.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/zh/menu_people_groups_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_nearby.xml b/indra/newview/skins/default/xui/zh/menu_people_nearby.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/zh/menu_people_nearby_multiselect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/zh/menu_people_nearby_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/zh/menu_people_recent_view_sort.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_picks.xml b/indra/newview/skins/default/xui/zh/menu_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_picks_plus.xml b/indra/newview/skins/default/xui/zh/menu_picks_plus.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_place.xml b/indra/newview/skins/default/xui/zh/menu_place.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_place_add_button.xml b/indra/newview/skins/default/xui/zh/menu_place_add_button.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/zh/menu_places_gear_folder.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/zh/menu_places_gear_landmark.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_profile_overflow.xml b/indra/newview/skins/default/xui/zh/menu_profile_overflow.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_save_outfit.xml b/indra/newview/skins/default/xui/zh/menu_save_outfit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_script_chiclet.xml b/indra/newview/skins/default/xui/zh/menu_script_chiclet.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_slurl.xml b/indra/newview/skins/default/xui/zh/menu_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/zh/menu_teleport_history_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/zh/menu_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/zh/menu_teleport_history_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_text_editor.xml b/indra/newview/skins/default/xui/zh/menu_text_editor.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_toolbars.xml b/indra/newview/skins/default/xui/zh/menu_toolbars.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_topinfobar.xml b/indra/newview/skins/default/xui/zh/menu_topinfobar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_agent.xml b/indra/newview/skins/default/xui/zh/menu_url_agent.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_group.xml b/indra/newview/skins/default/xui/zh/menu_url_group.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_http.xml b/indra/newview/skins/default/xui/zh/menu_url_http.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_inventory.xml b/indra/newview/skins/default/xui/zh/menu_url_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_map.xml b/indra/newview/skins/default/xui/zh/menu_url_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_objectim.xml b/indra/newview/skins/default/xui/zh/menu_url_objectim.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_parcel.xml b/indra/newview/skins/default/xui/zh/menu_url_parcel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_slapp.xml b/indra/newview/skins/default/xui/zh/menu_url_slapp.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_slurl.xml b/indra/newview/skins/default/xui/zh/menu_url_slurl.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_url_teleport.xml b/indra/newview/skins/default/xui/zh/menu_url_teleport.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_viewer.xml b/indra/newview/skins/default/xui/zh/menu_viewer.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/zh/menu_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_wearing_gear.xml b/indra/newview/skins/default/xui/zh/menu_wearing_gear.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/menu_wearing_tab.xml b/indra/newview/skins/default/xui/zh/menu_wearing_tab.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/mime_types.xml b/indra/newview/skins/default/xui/zh/mime_types.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/mime_types_linux.xml b/indra/newview/skins/default/xui/zh/mime_types_linux.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/mime_types_mac.xml b/indra/newview/skins/default/xui/zh/mime_types_mac.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/notifications.xml b/indra/newview/skins/default/xui/zh/notifications.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_active_object_row.xml b/indra/newview/skins/default/xui/zh/panel_active_object_row.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/zh/panel_adhoc_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/zh/panel_avatar_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_avatar_tag.xml b/indra/newview/skins/default/xui/zh/panel_avatar_tag.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/zh/panel_block_list_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_body_parts_list_item.xml b/indra/newview/skins/default/xui/zh/panel_body_parts_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_bodyparts_list_button_bar.xml b/indra/newview/skins/default/xui/zh/panel_bodyparts_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/zh/panel_bottomtray_lite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_chat_header.xml b/indra/newview/skins/default/xui/zh/panel_chat_header.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_chiclet_bar.xml b/indra/newview/skins/default/xui/zh/panel_chiclet_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_classified_info.xml b/indra/newview/skins/default/xui/zh/panel_classified_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_clothing_list_button_bar.xml b/indra/newview/skins/default/xui/zh/panel_clothing_list_button_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_clothing_list_item.xml b/indra/newview/skins/default/xui/zh/panel_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_cof_wearables.xml b/indra/newview/skins/default/xui/zh/panel_cof_wearables.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_deletable_wearable_list_item.xml b/indra/newview/skins/default/xui/zh/panel_deletable_wearable_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_dummy_clothing_list_item.xml b/indra/newview/skins/default/xui/zh/panel_dummy_clothing_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_alpha.xml b/indra/newview/skins/default/xui/zh/panel_edit_alpha.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_classified.xml b/indra/newview/skins/default/xui/zh/panel_edit_classified.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_eyes.xml b/indra/newview/skins/default/xui/zh/panel_edit_eyes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_gloves.xml b/indra/newview/skins/default/xui/zh/panel_edit_gloves.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_hair.xml b/indra/newview/skins/default/xui/zh/panel_edit_hair.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_jacket.xml b/indra/newview/skins/default/xui/zh/panel_edit_jacket.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_pants.xml b/indra/newview/skins/default/xui/zh/panel_edit_pants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_physics.xml b/indra/newview/skins/default/xui/zh/panel_edit_physics.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_pick.xml b/indra/newview/skins/default/xui/zh/panel_edit_pick.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_profile.xml b/indra/newview/skins/default/xui/zh/panel_edit_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_shape.xml b/indra/newview/skins/default/xui/zh/panel_edit_shape.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_shirt.xml b/indra/newview/skins/default/xui/zh/panel_edit_shirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_shoes.xml b/indra/newview/skins/default/xui/zh/panel_edit_shoes.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_skin.xml b/indra/newview/skins/default/xui/zh/panel_edit_skin.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_skirt.xml b/indra/newview/skins/default/xui/zh/panel_edit_skirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_socks.xml b/indra/newview/skins/default/xui/zh/panel_edit_socks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_underpants.xml b/indra/newview/skins/default/xui/zh/panel_edit_underpants.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_edit_wearable.xml b/indra/newview/skins/default/xui/zh/panel_edit_wearable.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_control_panel.xml b/indra/newview/skins/default/xui/zh/panel_group_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_general.xml b/indra/newview/skins/default/xui/zh/panel_group_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/zh/panel_group_info_sidetray.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_invite.xml b/indra/newview/skins/default/xui/zh/panel_group_invite.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_land_money.xml b/indra/newview/skins/default/xui/zh/panel_group_land_money.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_list_item.xml b/indra/newview/skins/default/xui/zh/panel_group_list_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_notices.xml b/indra/newview/skins/default/xui/zh/panel_group_notices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_notify.xml b/indra/newview/skins/default/xui/zh/panel_group_notify.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_group_roles.xml b/indra/newview/skins/default/xui/zh/panel_group_roles.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_im_control_panel.xml b/indra/newview/skins/default/xui/zh/panel_im_control_panel.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_instant_message.xml b/indra/newview/skins/default/xui/zh/panel_instant_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_inventory_item.xml b/indra/newview/skins/default/xui/zh/panel_inventory_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_landmark_info.xml b/indra/newview/skins/default/xui/zh/panel_landmark_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_landmarks.xml b/indra/newview/skins/default/xui/zh/panel_landmarks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_login.xml b/indra/newview/skins/default/xui/zh/panel_login.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_main_inventory.xml b/indra/newview/skins/default/xui/zh/panel_main_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_me.xml b/indra/newview/skins/default/xui/zh/panel_me.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_media_settings_general.xml b/indra/newview/skins/default/xui/zh/panel_media_settings_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_media_settings_security.xml b/indra/newview/skins/default/xui/zh/panel_media_settings_security.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_navigation_bar.xml b/indra/newview/skins/default/xui/zh/panel_navigation_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_navmesh_rebake.xml b/indra/newview/skins/default/xui/zh/panel_navmesh_rebake.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_nearby_chat.xml b/indra/newview/skins/default/xui/zh/panel_nearby_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/zh/panel_nearby_chat_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_nearby_media.xml b/indra/newview/skins/default/xui/zh/panel_nearby_media.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_notify_textbox.xml b/indra/newview/skins/default/xui/zh/panel_notify_textbox.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_online_status_toast.xml b/indra/newview/skins/default/xui/zh/panel_online_status_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/zh/panel_outbox_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_outfit_edit.xml b/indra/newview/skins/default/xui/zh/panel_outfit_edit.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/zh/panel_outfits_inventory_gear_default.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_outfits_list.xml b/indra/newview/skins/default/xui/zh/panel_outfits_list.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_outfits_wearing.xml b/indra/newview/skins/default/xui/zh/panel_outfits_wearing.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_people.xml b/indra/newview/skins/default/xui/zh/panel_people.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_pick_info.xml b/indra/newview/skins/default/xui/zh/panel_pick_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_picks.xml b/indra/newview/skins/default/xui/zh/panel_picks.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_place_profile.xml b/indra/newview/skins/default/xui/zh/panel_place_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_places.xml b/indra/newview/skins/default/xui/zh/panel_places.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_postcard_message.xml b/indra/newview/skins/default/xui/zh/panel_postcard_message.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_postcard_settings.xml b/indra/newview/skins/default/xui/zh/panel_postcard_settings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/zh/panel_preferences_advanced.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/zh/panel_preferences_alerts.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_chat.xml b/indra/newview/skins/default/xui/zh/panel_preferences_chat.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_colors.xml b/indra/newview/skins/default/xui/zh/panel_preferences_colors.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_general.xml b/indra/newview/skins/default/xui/zh/panel_preferences_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_move.xml b/indra/newview/skins/default/xui/zh/panel_preferences_move.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_setup.xml b/indra/newview/skins/default/xui/zh/panel_preferences_setup.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_sound.xml b/indra/newview/skins/default/xui/zh/panel_preferences_sound.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_region_covenant.xml b/indra/newview/skins/default/xui/zh/panel_region_covenant.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_region_debug.xml b/indra/newview/skins/default/xui/zh/panel_region_debug.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_region_environment.xml b/indra/newview/skins/default/xui/zh/panel_region_environment.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_region_estate.xml b/indra/newview/skins/default/xui/zh/panel_region_estate.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_region_general.xml b/indra/newview/skins/default/xui/zh/panel_region_general.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_region_terrain.xml b/indra/newview/skins/default/xui/zh/panel_region_terrain.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_script_ed.xml b/indra/newview/skins/default/xui/zh/panel_script_ed.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/zh/panel_script_limits_my_avatar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/zh/panel_script_limits_region_memory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_script_question_toast.xml b/indra/newview/skins/default/xui/zh/panel_script_question_toast.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_scrolling_param.xml b/indra/newview/skins/default/xui/zh/panel_scrolling_param.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_scrolling_param_base.xml b/indra/newview/skins/default/xui/zh/panel_scrolling_param_base.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/zh/panel_side_tray_tab_caption.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_snapshot_inventory.xml b/indra/newview/skins/default/xui/zh/panel_snapshot_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_snapshot_local.xml b/indra/newview/skins/default/xui/zh/panel_snapshot_local.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_snapshot_options.xml b/indra/newview/skins/default/xui/zh/panel_snapshot_options.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_snapshot_postcard.xml b/indra/newview/skins/default/xui/zh/panel_snapshot_postcard.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_snapshot_profile.xml b/indra/newview/skins/default/xui/zh/panel_snapshot_profile.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_sound_devices.xml b/indra/newview/skins/default/xui/zh/panel_sound_devices.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/zh/panel_stand_stop_flying.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_status_bar.xml b/indra/newview/skins/default/xui/zh/panel_status_bar.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_teleport_history.xml b/indra/newview/skins/default/xui/zh/panel_teleport_history.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/zh/panel_teleport_history_item.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_voice_effect.xml b/indra/newview/skins/default/xui/zh/panel_voice_effect.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/zh/panel_volume_pulldown.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/panel_world_map.xml b/indra/newview/skins/default/xui/zh/panel_world_map.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/role_actions.xml b/indra/newview/skins/default/xui/zh/role_actions.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/sidepanel_appearance.xml b/indra/newview/skins/default/xui/zh/sidepanel_appearance.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/sidepanel_inventory.xml b/indra/newview/skins/default/xui/zh/sidepanel_inventory.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/sidepanel_item_info.xml b/indra/newview/skins/default/xui/zh/sidepanel_item_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/sidepanel_task_info.xml b/indra/newview/skins/default/xui/zh/sidepanel_task_info.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/strings.xml b/indra/newview/skins/default/xui/zh/strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/skins/default/xui/zh/teleport_strings.xml b/indra/newview/skins/default/xui/zh/teleport_strings.xml old mode 100644 new mode 100755 diff --git a/indra/newview/tests/gpus_results.txt b/indra/newview/tests/gpus_results.txt old mode 100644 new mode 100755 diff --git a/indra/newview/tests/gpus_seen.txt b/indra/newview/tests/gpus_seen.txt old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llagentaccess_test.cpp b/indra/newview/tests/llagentaccess_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llcapabilitylistener_test.cpp b/indra/newview/tests/llcapabilitylistener_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lldateutil_test.cpp b/indra/newview/tests/lldateutil_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lldir_stub.cpp b/indra/newview/tests/lldir_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llglslshader_stub.cpp b/indra/newview/tests/llglslshader_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lllogininstance_test.cpp b/indra/newview/tests/lllogininstance_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llmediadataclient_test.cpp b/indra/newview/tests/llmediadataclient_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llpipeline_stub.cpp b/indra/newview/tests/llpipeline_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llremoteparcelrequest_test.cpp b/indra/newview/tests/llremoteparcelrequest_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llsecapi_test.cpp b/indra/newview/tests/llsecapi_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llsechandler_basic_test.cpp b/indra/newview/tests/llsechandler_basic_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llsimplestat_test.cpp b/indra/newview/tests/llsimplestat_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llsky_stub.cpp b/indra/newview/tests/llsky_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llslurl_test.cpp b/indra/newview/tests/llslurl_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lltextureinfo_test.cpp b/indra/newview/tests/lltextureinfo_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lltextureinfodetails_test.cpp b/indra/newview/tests/lltextureinfodetails_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lltexturestatsuploader_test.cpp b/indra/newview/tests/lltexturestatsuploader_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/lltranslate_test.cpp b/indra/newview/tests/lltranslate_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llversioninfo_test.cpp b/indra/newview/tests/llversioninfo_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llviewerassetstats_test.cpp b/indra/newview/tests/llviewerassetstats_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llviewerhelputil_test.cpp b/indra/newview/tests/llviewerhelputil_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llviewernetwork_test.cpp b/indra/newview/tests/llviewernetwork_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llviewershadermgr_stub.cpp b/indra/newview/tests/llviewershadermgr_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llwlanimator_stub.cpp b/indra/newview/tests/llwlanimator_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llwldaycycle_stub.cpp b/indra/newview/tests/llwldaycycle_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llwlparammanager_test.cpp b/indra/newview/tests/llwlparammanager_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llwlparamset_stub.cpp b/indra/newview/tests/llwlparamset_stub.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llworldmap_test.cpp b/indra/newview/tests/llworldmap_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llworldmipmap_test.cpp b/indra/newview/tests/llworldmipmap_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/llxmlrpclistener_test.cpp b/indra/newview/tests/llxmlrpclistener_test.cpp old mode 100644 new mode 100755 diff --git a/indra/newview/tests/test_llxmlrpc_peer.py b/indra/newview/tests/test_llxmlrpc_peer.py old mode 100644 new mode 100755 diff --git a/indra/newview/tr.lproj/language.txt b/indra/newview/tr.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/uk.lproj/language.txt b/indra/newview/uk.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py old mode 100644 new mode 100755 diff --git a/indra/newview/zh-Hans.lproj/language.txt b/indra/newview/zh-Hans.lproj/language.txt old mode 100644 new mode 100755 diff --git a/indra/test/CMakeLists.txt b/indra/test/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/test/blowfish.1.bin b/indra/test/blowfish.1.bin old mode 100644 new mode 100755 diff --git a/indra/test/blowfish.2.bin b/indra/test/blowfish.2.bin old mode 100644 new mode 100755 diff --git a/indra/test/blowfish.digits.txt b/indra/test/blowfish.digits.txt old mode 100644 new mode 100755 diff --git a/indra/test/catch_and_store_what_in.h b/indra/test/catch_and_store_what_in.h old mode 100644 new mode 100755 diff --git a/indra/test/debug.h b/indra/test/debug.h old mode 100644 new mode 100755 diff --git a/indra/test/io.cpp b/indra/test/io.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llapp_tut.cpp b/indra/test/llapp_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llassetuploadqueue_tut.cpp b/indra/test/llassetuploadqueue_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llblowfish_tut.cpp b/indra/test/llblowfish_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llbuffer_tut.cpp b/indra/test/llbuffer_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lldatapacker_tut.cpp b/indra/test/lldatapacker_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lldoubledispatch_tut.cpp b/indra/test/lldoubledispatch_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llevents_tut.cpp b/indra/test/llevents_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llhttpdate_tut.cpp b/indra/test/llhttpdate_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llhttpnode_tut.cpp b/indra/test/llhttpnode_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lliohttpserver_tut.cpp b/indra/test/lliohttpserver_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llmessageconfig_tut.cpp b/indra/test/llmessageconfig_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llmessagetemplateparser_tut.cpp b/indra/test/llmessagetemplateparser_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llpermissions_tut.cpp b/indra/test/llpermissions_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llpipeutil.cpp b/indra/test/llpipeutil.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llpipeutil.h b/indra/test/llpipeutil.h old mode 100644 new mode 100755 diff --git a/indra/test/llsaleinfo_tut.cpp b/indra/test/llsaleinfo_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llscriptresource_tut.cpp b/indra/test/llscriptresource_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llsd_new_tut.cpp b/indra/test/llsd_new_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llsdmessagebuilder_tut.cpp b/indra/test/llsdmessagebuilder_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llsdmessagereader_tut.cpp b/indra/test/llsdmessagereader_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llsdtraits.h b/indra/test/llsdtraits.h old mode 100644 new mode 100755 diff --git a/indra/test/llsdutil_tut.cpp b/indra/test/llsdutil_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llservicebuilder_tut.cpp b/indra/test/llservicebuilder_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llstreamtools_tut.cpp b/indra/test/llstreamtools_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lltemplatemessagebuilder_tut.cpp b/indra/test/lltemplatemessagebuilder_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lltimestampcache_tut.cpp b/indra/test/lltimestampcache_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lltranscode_tut.cpp b/indra/test/lltranscode_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lltut.cpp b/indra/test/lltut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lltut.h b/indra/test/lltut.h old mode 100644 new mode 100755 diff --git a/indra/test/lluserrelations_tut.cpp b/indra/test/lluserrelations_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/lluuidhashmap_tut.cpp b/indra/test/lluuidhashmap_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/llxorcipher_tut.cpp b/indra/test/llxorcipher_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/manageapr.h b/indra/test/manageapr.h old mode 100644 new mode 100755 diff --git a/indra/test/message_tut.cpp b/indra/test/message_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/mock_http_client.cpp b/indra/test/mock_http_client.cpp old mode 100644 new mode 100755 diff --git a/indra/test/mock_http_client.h b/indra/test/mock_http_client.h old mode 100644 new mode 100755 diff --git a/indra/test/namedtempfile.h b/indra/test/namedtempfile.h old mode 100644 new mode 100755 diff --git a/indra/test/prim_linkability_tut.cpp b/indra/test/prim_linkability_tut.cpp old mode 100644 new mode 100755 diff --git a/indra/test/test.cpp b/indra/test/test.cpp old mode 100644 new mode 100755 diff --git a/indra/test/test.h b/indra/test/test.h old mode 100644 new mode 100755 diff --git a/indra/test/test_llmanifest.py b/indra/test/test_llmanifest.py old mode 100644 new mode 100755 diff --git a/indra/test_apps/llplugintest/CMakeLists.txt b/indra/test_apps/llplugintest/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/test_apps/llplugintest/bookmarks.txt b/indra/test_apps/llplugintest/bookmarks.txt old mode 100644 new mode 100755 diff --git a/indra/test_apps/llplugintest/llmediaplugintest.cpp b/indra/test_apps/llplugintest/llmediaplugintest.cpp old mode 100644 new mode 100755 diff --git a/indra/test_apps/llplugintest/llmediaplugintest.h b/indra/test_apps/llplugintest/llmediaplugintest.h old mode 100644 new mode 100755 diff --git a/indra/tools/vstool/README.txt b/indra/tools/vstool/README.txt old mode 100644 new mode 100755 diff --git a/indra/tools/vstool/VSTool.csproj b/indra/tools/vstool/VSTool.csproj old mode 100644 new mode 100755 diff --git a/indra/tools/vstool/VSTool.sln b/indra/tools/vstool/VSTool.sln old mode 100644 new mode 100755 diff --git a/indra/tools/vstool/main.cs b/indra/tools/vstool/main.cs old mode 100644 new mode 100755 diff --git a/indra/viewer_components/CMakeLists.txt b/indra/viewer_components/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/viewer_components/login/CMakeLists.txt b/indra/viewer_components/login/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/viewer_components/login/lllogin.cpp b/indra/viewer_components/login/lllogin.cpp old mode 100644 new mode 100755 diff --git a/indra/viewer_components/login/lllogin.h b/indra/viewer_components/login/lllogin.h old mode 100644 new mode 100755 diff --git a/indra/viewer_components/login/tests/lllogin_test.cpp b/indra/viewer_components/login/tests/lllogin_test.cpp old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/CMakeLists.txt b/indra/viewer_components/updater/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdatechecker.cpp b/indra/viewer_components/updater/llupdatechecker.cpp old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdatechecker.h b/indra/viewer_components/updater/llupdatechecker.h old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdatedownloader.cpp b/indra/viewer_components/updater/llupdatedownloader.cpp old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdatedownloader.h b/indra/viewer_components/updater/llupdatedownloader.h old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdateinstaller.cpp b/indra/viewer_components/updater/llupdateinstaller.cpp old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdateinstaller.h b/indra/viewer_components/updater/llupdateinstaller.h old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdaterservice.cpp b/indra/viewer_components/updater/llupdaterservice.cpp old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/llupdaterservice.h b/indra/viewer_components/updater/llupdaterservice.h old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/scripts/darwin/update_install b/indra/viewer_components/updater/scripts/darwin/update_install old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/scripts/linux/update_install b/indra/viewer_components/updater/scripts/linux/update_install old mode 100644 new mode 100755 diff --git a/indra/viewer_components/updater/tests/llupdaterservice_test.cpp b/indra/viewer_components/updater/tests/llupdaterservice_test.cpp old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/CMakeLists.txt b/indra/win_crash_logger/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/StdAfx.cpp b/indra/win_crash_logger/StdAfx.cpp old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/StdAfx.h b/indra/win_crash_logger/StdAfx.h old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/ll_icon.ico b/indra/win_crash_logger/ll_icon.ico old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/llcrashloggerwindows.cpp b/indra/win_crash_logger/llcrashloggerwindows.cpp old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/llcrashloggerwindows.h b/indra/win_crash_logger/llcrashloggerwindows.h old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/resource.h b/indra/win_crash_logger/resource.h old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/win_crash_logger.cpp b/indra/win_crash_logger/win_crash_logger.cpp old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/win_crash_logger.h b/indra/win_crash_logger/win_crash_logger.h old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/win_crash_logger.ico b/indra/win_crash_logger/win_crash_logger.ico old mode 100644 new mode 100755 diff --git a/indra/win_crash_logger/win_crash_logger.rc b/indra/win_crash_logger/win_crash_logger.rc old mode 100644 new mode 100755 diff --git a/indra/win_updater/CMakeLists.txt b/indra/win_updater/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/indra/win_updater/updater.cpp b/indra/win_updater/updater.cpp old mode 100644 new mode 100755 diff --git a/scripts/messages/message_template.msg b/scripts/messages/message_template.msg old mode 100644 new mode 100755 diff --git a/scripts/messages/message_template.msg.sha1 b/scripts/messages/message_template.msg.sha1 old mode 100644 new mode 100755 diff --git a/scripts/setup-path.py b/scripts/setup-path.py old mode 100644 new mode 100755 diff --git a/scripts/template_verifier.py b/scripts/template_verifier.py old mode 100644 new mode 100755 diff --git a/scripts/templates/template-cpp.cpp b/scripts/templates/template-cpp.cpp old mode 100644 new mode 100755 diff --git a/scripts/templates/template-h.h b/scripts/templates/template-h.h old mode 100644 new mode 100755 -- cgit v1.3