summaryrefslogtreecommitdiff
path: root/indra/llui/llfolderviewitem.cpp
diff options
context:
space:
mode:
authorRichard Linden <none@none>2012-08-01 01:14:27 -0700
committerRichard Linden <none@none>2012-08-01 01:14:27 -0700
commita204059d2e69fb33cb1a3c8d2fbed35d3967297c (patch)
tree94d73465750ae665f5915588705430172a9ef7da /indra/llui/llfolderviewitem.cpp
parent8f7871911deba87e5ceed8f6f36c1cb2b429efe8 (diff)
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
Diffstat (limited to 'indra/llui/llfolderviewitem.cpp')
-rw-r--r--indra/llui/llfolderviewitem.cpp68
1 files changed, 25 insertions, 43 deletions
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*> 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<time_t>(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()
{