MAINT-3597 FIXED Bumps, Pushes & Hits Improvements

master
Mnikolenko ProductEngine 2015-05-28 12:08:06 +03:00
parent 7854350151
commit b59e4a02b6
4 changed files with 36 additions and 12 deletions

View File

@ -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");
}

View File

@ -46,6 +46,10 @@ public:
/*virtual*/ BOOL postBuild();
/*virtual*/ void onOpen(const LLSD& key);
static LLFloaterBump* getInstance();
void populateCollisionList();
void startIM();
void startCall();
void reportAbuse();

View File

@ -57,6 +57,7 @@
#include "llcallingcard.h"
#include "llbuycurrencyhtml.h"
#include "llfirstuse.h"
#include "llfloaterbump.h"
#include "llfloaterbuyland.h"
#include "llfloaterland.h"
#include "llfloaterregioninfo.h"
@ -6215,6 +6216,11 @@ void process_mean_collision_alert_message(LLMessageSystem *msgsystem, void **use
gCacheName->get(perp, false, boost::bind(&mean_name_callback, _1, _2, _3));
}
}
LLFloaterBump* bumps_floater = LLFloaterBump::getInstance();
if(bumps_floater && bumps_floater->isInVisibleChain())
{
bumps_floater->populateCollisionList();
}
}
void process_frozen_message(LLMessageSystem *msgsystem, void **user_data)

View File

@ -7,7 +7,7 @@
help_topic="floater_bumps"
save_rect="true"
title="BUMPS, PUSHES &amp; HITS"
width="400">
width="420">
<floater.string
name="none_detected">
None detected
@ -34,7 +34,7 @@
</floater.string>
<floater.string
name="timeStr">
[[hour,datetime,slt]:[min,datetime,slt]]
[[hour,datetime,slt]:[min,datetime,slt]:[second,datetime,slt]]
</floater.string>
<scroll_list
draw_border="false"
@ -45,5 +45,5 @@
multi_select="true"
name="bump_list"
top="20"
width="388" />
width="408" />
</floater>