summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterbump.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterbump.cpp')
-rwxr-xr-xindra/newview/llfloaterbump.cpp32
1 files changed, 23 insertions, 9 deletions
diff --git a/indra/newview/llfloaterbump.cpp b/indra/newview/llfloaterbump.cpp
index 34904cf7ed..957c91b226 100755
--- a/indra/newview/llfloaterbump.cpp
+++ b/indra/newview/llfloaterbump.cpp
@@ -32,6 +32,7 @@
#include "llavataractions.h"
#include "llfloaterbump.h"
+#include "llfloaterreg.h"
#include "llfloaterreporter.h"
#include "llmutelist.h"
#include "llpanelblockedlist.h"
@@ -87,11 +88,11 @@ BOOL LLFloaterBump::postBuild()
// virtual
void LLFloaterBump::onOpen(const LLSD& key)
{
- mNames.clear();
- mList->deleteAllItems();
-
if (gMeanCollisionList.empty())
{
+ mNames.clear();
+ mList->deleteAllItems();
+
std::string none_detected = getString("none_detected");
LLSD row;
row["columns"][0]["value"] = none_detected;
@@ -100,12 +101,20 @@ void LLFloaterBump::onOpen(const LLSD& key)
}
else
{
- for (mean_collision_list_t::iterator iter = gMeanCollisionList.begin();
- iter != gMeanCollisionList.end(); ++iter)
- {
- LLMeanCollisionData *mcd = *iter;
- add(mList, mcd);
- }
+ populateCollisionList();
+ }
+}
+
+void LLFloaterBump::populateCollisionList()
+{
+ mNames.clear();
+ mList->deleteAllItems();
+
+ for (mean_collision_list_t::iterator iter = gMeanCollisionList.begin();
+ iter != gMeanCollisionList.end(); ++iter)
+ {
+ LLMeanCollisionData *mcd = *iter;
+ add(mList, mcd);
}
}
@@ -247,3 +256,8 @@ void LLFloaterBump::inviteToGroup()
{
LLAvatarActions::inviteToGroup(mItemUUID);
}
+
+LLFloaterBump* LLFloaterBump::getInstance()
+{
+ return LLFloaterReg::getTypedInstance<LLFloaterBump>("bumps");
+}