From 99ea3facced32410790a266ba835317cf31eafb5 Mon Sep 17 00:00:00 2001 From: Lirusaito Date: Thu, 23 May 2013 14:28:11 -0400 Subject: [PATCH] Just some touch-ups to the radar, they compile and won't affect anything, but they'll help in the future. --- indra/newview/app_settings/settings.xml | 13 +++++++ indra/newview/llfloateravatarlist.cpp | 37 ++++++++----------- indra/newview/llfloateravatarlist.h | 2 +- .../skins/default/xui/en-us/floater_radar.xml | 2 +- 4 files changed, 30 insertions(+), 24 deletions(-) diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 98336d37a..4fbf49d64 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -6853,6 +6853,19 @@ This should be as low as possible, but too low may break functionality Value 0 + RadarUpdateEnabled + + Comment + When false, pauses the radar until further notice, good for banning someone who just left. + Persist + 0 + HideFromEditor + 1 + Type + Boolean + Value + 1 + RadarUpdateRate Comment diff --git a/indra/newview/llfloateravatarlist.cpp b/indra/newview/llfloateravatarlist.cpp index 8491aa192..7fee89c66 100644 --- a/indra/newview/llfloateravatarlist.cpp +++ b/indra/newview/llfloateravatarlist.cpp @@ -315,7 +315,7 @@ const LLAvatarListEntry::ACTIVITY_TYPE LLAvatarListEntry::getActivity() LLFloaterAvatarList::LLFloaterAvatarList() : LLFloater(std::string("radar")), mTracking(false), - mUpdate(true), + mUpdate("RadarUpdateEnabled"), mDirtyAvatarSorting(false), mUpdateRate(gSavedSettings.getU32("RadarUpdateRate") * 3 + 3), mAvatarList(NULL) @@ -415,12 +415,12 @@ BOOL LLFloaterAvatarList::postBuild() getChild("update_rate")->setSelectedIndex(gSavedSettings.getU32("RadarUpdateRate")); getChild("update_rate")->setCommitCallback(boost::bind(&LLFloaterAvatarList::onCommitUpdateRate, this)); - getChild("hide_mark")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); - getChild("hide_pos")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); - getChild("hide_alt")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); - getChild("hide_act")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); - getChild("hide_age")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); - getChild("hide_time")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnMarkHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnPositionHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnAltitudeHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnActivityHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnAgeHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnTimeHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); // Get a pointer to the scroll list from the interface mAvatarList = getChild("avatar_list"); @@ -438,7 +438,7 @@ BOOL LLFloaterAvatarList::postBuild() if(gHippoGridManager->getConnectedGrid()->isSecondLife()) childSetVisible("hide_client", false); else - getChild("hide_client")->setCommitCallback(boost::bind(&LLFloaterAvatarList::assessColumns, this)); + gSavedSettings.getControl("RadarColumnClientHidden")->getSignal()->connect(boost::bind(&LLFloaterAvatarList::assessColumns, this)); return TRUE; } @@ -529,17 +529,11 @@ void LLFloaterAvatarList::updateAvatarList() //llinfos << "radar refresh: updating map" << llendl; // Check whether updates are enabled - LLCheckboxCtrl* check = getChild("update_enabled_cb"); - if (check && !check->getValue()) + if (mUpdate) { - mUpdate = FALSE; refreshTracker(); return; } - else - { - mUpdate = TRUE; - } //moved to pipeline to prevent a crash //gPipeline.forAllVisibleDrawables(updateParticleActivity); @@ -1248,19 +1242,18 @@ LLAvatarListEntry * LLFloaterAvatarList::getAvatarEntry(LLUUID avatar) BOOL LLFloaterAvatarList::handleKeyHere(KEY key, MASK mask) { - LLFloaterAvatarList* self = getInstance(); - LLScrollListItem* item = self->mAvatarList->getFirstSelected(); + LLScrollListItem* item = mAvatarList->getFirstSelected(); if(item) { LLUUID agent_id = item->getUUID(); if (( KEY_RETURN == key ) && (MASK_NONE == mask)) { - self->setFocusAvatar(agent_id); + setFocusAvatar(agent_id); return TRUE; } else if (( KEY_RETURN == key ) && (MASK_CONTROL == mask)) { - LLAvatarListEntry* entry = self->getAvatarEntry(agent_id); + const LLAvatarListEntry* entry = getAvatarEntry(agent_id); if (entry) { // llinfos << "Trying to teleport to " << entry->getName() << " at " << entry->getPosition() << llendl; @@ -1272,7 +1265,7 @@ BOOL LLFloaterAvatarList::handleKeyHere(KEY key, MASK mask) if (( KEY_RETURN == key ) && (MASK_SHIFT == mask)) { - uuid_vec_t ids = self->mAvatarList->getSelectedIDs(); + uuid_vec_t ids = mAvatarList->getSelectedIDs(); if (ids.size() > 0) { if (ids.size() == 1) @@ -1414,11 +1407,11 @@ void LLFloaterAvatarList::sendKeys() std::ostringstream ids; int num_ids = 0; - for (int i = 0; i < regionp->mMapAvatarIDs.count(); i++) + for (int i = 0; i < regionp->mMapAvatarIDs.count(); ++i) { const LLUUID &id = regionp->mMapAvatarIDs.get(i); - ids << "," << id.asString(); + ids << "," << id; ++num_ids; diff --git a/indra/newview/llfloateravatarlist.h b/indra/newview/llfloateravatarlist.h index 3bcf4ea67..2ad3de090 100644 --- a/indra/newview/llfloateravatarlist.h +++ b/indra/newview/llfloateravatarlist.h @@ -354,7 +354,7 @@ private: /** * @brief TRUE when Updating */ - bool mUpdate; + const LLCachedControl mUpdate; /** * @brief Update rate (if min frames per update) diff --git a/indra/newview/skins/default/xui/en-us/floater_radar.xml b/indra/newview/skins/default/xui/en-us/floater_radar.xml index acb660be5..2f55b644a 100644 --- a/indra/newview/skins/default/xui/en-us/floater_radar.xml +++ b/indra/newview/skins/default/xui/en-us/floater_radar.xml @@ -289,7 +289,7 @@ -