From 6f6641219ea36ad0b4c3b39d0a35c55b1bf0a2fc Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 11 Jan 2012 11:25:45 -0800 Subject: Changing the name of the fetch states to be more informative. --- indra/newview/llfloaterpathfindinglinksets.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 87f667154a..699e105a31 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -390,8 +390,8 @@ BOOL LLFloaterPathfindingLinksets::isFetchInProgress() const switch (getFetchState()) { case kFetchStarting : - case kFetchInProgress : - case kFetchInProgress_MultiRequested : + case kFetchRequestSent : + case kFetchRequestSent_MultiRequested : case kFetchReceived : retVal = true; break; @@ -420,9 +420,9 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() { if (isFetchInProgress()) { - if (getFetchState() == kFetchInProgress) + if (getFetchState() == kFetchRequestSent) { - setFetchState(kFetchInProgress_MultiRequested); + setFetchState(kFetchRequestSent_MultiRequested); } } else @@ -441,7 +441,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() } else { - setFetchState(kFetchInProgress); + setFetchState(kFetchRequestSent); LLHTTPClient::get(navmeshDataURL, new NavmeshDataGetResponder(navmeshDataURL, this)); } } @@ -581,10 +581,10 @@ void LLFloaterPathfindingLinksets::updateLinksetsStatusMessage() case kFetchStarting : statusText = getString("linksets_fetching_starting"); break; - case kFetchInProgress : + case kFetchRequestSent : statusText = getString("linksets_fetching_inprogress"); break; - case kFetchInProgress_MultiRequested : + case kFetchRequestSent_MultiRequested : statusText = getString("linksets_fetching_inprogress_multi_request"); break; case kFetchReceived : -- cgit v1.2.3 From c0c642862e8e4b58e185aafdd29460c7a89c6483 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 11 Jan 2012 17:44:49 -0800 Subject: PATH-145: Implementing the basics of filtering on the pathfinding linksets console. Still need some refinments in usability. --- indra/newview/llfloaterpathfindinglinksets.cpp | 352 ++++++++++++++++++++----- 1 file changed, 285 insertions(+), 67 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 699e105a31..af9eda51cd 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -33,11 +33,13 @@ #include "llagent.h" #include "llfloater.h" #include "llfloaterreg.h" +#include "lltextbase.h" +#include "lllineeditor.h" #include "llscrolllistctrl.h" +#include "llcheckboxctrl.h" #include "llresmgr.h" #include "llviewerregion.h" #include "llhttpclient.h" -#include "lltextbase.h" #include "lluuid.h" //--------------------------------------------------------------------------- @@ -257,6 +259,83 @@ void PathfindingLinkset::setD(F32 pD) mD = pD; } +//--------------------------------------------------------------------------- +// FilterString +//--------------------------------------------------------------------------- + +FilterString::FilterString() + : mFilter(), + mUpperFilter() +{ +} + +FilterString::FilterString(const std::string& pFilter) + : mFilter(pFilter), + mUpperFilter() +{ + LLStringUtil::trim(mFilter); + mUpperFilter = mFilter; + if (!mUpperFilter.empty()) + { + LLStringUtil::toUpper(mUpperFilter); + } +} + +FilterString::FilterString(const FilterString& pOther) + : mFilter(pOther.mFilter), + mUpperFilter(pOther.mUpperFilter) +{ +} + +FilterString::~FilterString() +{ +} + +const std::string& FilterString::get() const +{ + return mFilter; +} + +bool FilterString::set(const std::string& pFilter) +{ + std::string newFilter(pFilter); + LLStringUtil::trim(newFilter); + bool didFilterChange = (mFilter.compare(newFilter) != 0); + if (didFilterChange) + { + mFilter = newFilter; + mUpperFilter = newFilter; + LLStringUtil::toUpper(mUpperFilter); + } + + return didFilterChange; +} + +void FilterString::clear() +{ + mFilter.clear(); + mUpperFilter.clear(); +} + +bool FilterString::isActive() const +{ + return !mFilter.empty(); +} + +bool FilterString::doesMatch(const std::string& pTestString) const +{ + bool doesMatch = true; + + if (isActive()) + { + std::string upperTestString(pTestString); + LLStringUtil::toUpper(upperTestString); + doesMatch = (upperTestString.find(mUpperFilter) != std::string::npos); + } + + return doesMatch; +} + //--------------------------------------------------------------------------- // PathfindingLinksets //--------------------------------------------------------------------------- @@ -264,16 +343,22 @@ void PathfindingLinkset::setD(F32 pD) PathfindingLinksets::PathfindingLinksets() : mAllLinksets(), mFilteredLinksets(), - mIsFilterDirty(false), - mNameFilter() + mIsFiltersDirty(false), + mNameFilter(), + mDescriptionFilter(), + mIsFixedFilter(false), + mIsWalkableFilter(false) { } PathfindingLinksets::PathfindingLinksets(const LLSD& pNavmeshData) : mAllLinksets(), mFilteredLinksets(), - mIsFilterDirty(false), - mNameFilter() + mIsFiltersDirty(false), + mNameFilter(), + mDescriptionFilter(), + mIsFixedFilter(false), + mIsWalkableFilter(false) { parseNavmeshData(pNavmeshData); } @@ -281,8 +366,11 @@ PathfindingLinksets::PathfindingLinksets(const LLSD& pNavmeshData) PathfindingLinksets::PathfindingLinksets(const PathfindingLinksets& pOther) : mAllLinksets(pOther.mAllLinksets), mFilteredLinksets(pOther.mFilteredLinksets), - mIsFilterDirty(pOther.mIsFilterDirty), - mNameFilter(pOther.mNameFilter) + mIsFiltersDirty(pOther.mIsFiltersDirty), + mNameFilter(pOther.mNameFilter), + mDescriptionFilter(pOther.mDescriptionFilter), + mIsFixedFilter(pOther.mIsFixedFilter), + mIsWalkableFilter(pOther.mIsWalkableFilter) { } @@ -305,14 +393,14 @@ void PathfindingLinksets::parseNavmeshData(const LLSD& pNavmeshData) mAllLinksets.insert(std::pair(uuid, linkset)); } - mIsFilterDirty = true; + mIsFiltersDirty = true; } void PathfindingLinksets::clearLinksets() { mAllLinksets.clear(); mFilteredLinksets.clear(); - mIsFilterDirty = false; + mIsFiltersDirty = false; } const PathfindingLinksets::PathfindingLinksetMap& PathfindingLinksets::getAllLinksets() const @@ -322,28 +410,97 @@ const PathfindingLinksets::PathfindingLinksetMap& PathfindingLinksets::getAllLin const PathfindingLinksets::PathfindingLinksetMap& PathfindingLinksets::getFilteredLinksets() { -#if 0 - if (!isFilterActive()) + if (!isFiltersActive()) { return mAllLinksets; } else { - if (mIsFilterDirty) - { - mFilteredLinksets.clear(); - for (PathfindingLinksetMap::const_iterator linksetIter = mAllLinksets.begin(); - linksetIter != mAllLinksets.end(); ++linksetIter) - { + applyFilters(); + return mFilteredLinksets; + } +} - } - mIsFilterDirty = false; +BOOL PathfindingLinksets::isFiltersActive() const +{ + return (mNameFilter.isActive() || mDescriptionFilter.isActive() || mIsFixedFilter || mIsWalkableFilter); +} + +void PathfindingLinksets::setNameFilter(const std::string& pNameFilter) +{ + mIsFiltersDirty = (mNameFilter.set(pNameFilter) || mIsFiltersDirty); +} + +const std::string& PathfindingLinksets::getNameFilter() const +{ + return mNameFilter.get(); +} + +void PathfindingLinksets::setDescriptionFilter(const std::string& pDescriptionFilter) +{ + mIsFiltersDirty = (mDescriptionFilter.set(pDescriptionFilter) || mIsFiltersDirty); +} + +const std::string& PathfindingLinksets::getDescriptionFilter() const +{ + return mDescriptionFilter.get(); +} + +void PathfindingLinksets::setFixedFilter(BOOL pFixedFilter) +{ + mIsFiltersDirty = (mIsFiltersDirty || (mIsFixedFilter == pFixedFilter)); + mIsFixedFilter = pFixedFilter; +} + +BOOL PathfindingLinksets::isFixedFilter() const +{ + return mIsFixedFilter; +} + +void PathfindingLinksets::setWalkableFilter(BOOL pWalkableFilter) +{ + mIsFiltersDirty = (mIsFiltersDirty || (mIsWalkableFilter == pWalkableFilter)); + mIsWalkableFilter = pWalkableFilter; +} + +BOOL PathfindingLinksets::isWalkableFilter() const +{ + return mIsWalkableFilter; +} + +void PathfindingLinksets::clearFilters() +{ + mNameFilter.clear(); + mDescriptionFilter.clear(); + mIsFixedFilter = false; + mIsWalkableFilter = false; + mIsFiltersDirty = false; +} + +void PathfindingLinksets::applyFilters() +{ + mFilteredLinksets.clear(); + + for (PathfindingLinksetMap::const_iterator linksetIter = mAllLinksets.begin(); + linksetIter != mAllLinksets.end(); ++linksetIter) + { + const std::string& uuid(linksetIter->first); + const PathfindingLinkset& linkset(linksetIter->second); + if (doesMatchFilters(linkset)) + { + mFilteredLinksets.insert(std::pair(uuid, linkset)); } - return mFilteredLinksets; } -#else - return mAllLinksets; -#endif + + mIsFiltersDirty = false; +} + +BOOL PathfindingLinksets::doesMatchFilters(const PathfindingLinkset& pLinkset) const +{ + return ((!mIsFixedFilter || pLinkset.isFixed()) && + (!mIsWalkableFilter || pLinkset.isWalkable()) && + (!mNameFilter.isActive() || mNameFilter.doesMatch(pLinkset.getName())) && + (!mDescriptionFilter.isActive() || mDescriptionFilter.doesMatch(pLinkset.getDescription()))); } //--------------------------------------------------------------------------- @@ -352,6 +509,8 @@ const PathfindingLinksets::PathfindingLinksetMap& PathfindingLinksets::getFilter BOOL LLFloaterPathfindingLinksets::postBuild() { + childSetAction("apply_filters", boost::bind(&LLFloaterPathfindingLinksets::onApplyFiltersClicked, this)); + childSetAction("clear_filters", boost::bind(&LLFloaterPathfindingLinksets::onClearFiltersClicked, this)); childSetAction("refresh_linksets_list", boost::bind(&LLFloaterPathfindingLinksets::onRefreshLinksetsClicked, this)); childSetAction("select_all_linksets", boost::bind(&LLFloaterPathfindingLinksets::onSelectAllLinksetsClicked, this)); childSetAction("select_none_linksets", boost::bind(&LLFloaterPathfindingLinksets::onSelectNoneLinksetsClicked, this)); @@ -364,6 +523,26 @@ BOOL LLFloaterPathfindingLinksets::postBuild() mLinksetsStatus = findChild("linksets_status"); llassert(mLinksetsStatus != NULL); + mFilterByName = findChild("filter_by_name"); + llassert(mFilterByName != NULL); + mFilterByName->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyFiltersClicked, this)); + mFilterByName->setSelectAllonFocusReceived(true); + mFilterByName->setCommitOnFocusLost(true); + + mFilterByDescription = findChild("filter_by_description"); + llassert(mFilterByDescription != NULL); + mFilterByDescription->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyFiltersClicked, this)); + mFilterByDescription->setSelectAllonFocusReceived(true); + mFilterByDescription->setCommitOnFocusLost(true); + + mFilterByFixed = findChild("filter_by_fixed"); + llassert(mFilterByFixed != NULL); + mFilterByFixed->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyFiltersClicked, this)); + + mFilterByWalkable = findChild("filter_by_walkable"); + llassert(mFilterByWalkable != NULL); + mFilterByWalkable->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyFiltersClicked, this)); + setFetchState(kFetchInitial); return LLFloater::postBuild(); @@ -408,7 +587,11 @@ LLFloaterPathfindingLinksets::LLFloaterPathfindingLinksets(const LLSD& pSeed) mPathfindingLinksets(), mFetchState(kFetchInitial), mLinksetsScrollList(NULL), - mLinksetsStatus(NULL) + mLinksetsStatus(NULL), + mFilterByName(NULL), + mFilterByDescription(NULL), + mFilterByFixed(NULL), + mFilterByWalkable(NULL) { } @@ -428,7 +611,8 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() else { setFetchState(kFetchStarting); - clearLinksetsList(); + mPathfindingLinksets.clearLinksets(); + updateLinksetsList(); LLViewerRegion* region = gAgent.getRegion(); if (region != NULL) @@ -451,9 +635,78 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() void LLFloaterPathfindingLinksets::handleNavmeshDataGetReply(const LLSD& pNavmeshData) { setFetchState(kFetchReceived); - clearLinksetsList(); - mPathfindingLinksets.parseNavmeshData(pNavmeshData); + updateLinksetsList(); + setFetchState(kFetchComplete); +} + +void LLFloaterPathfindingLinksets::handleNavmeshDataGetError(const std::string& pURL, const std::string& pErrorReason) +{ + setFetchState(kFetchError); + mPathfindingLinksets.clearLinksets(); + updateLinksetsList(); + llwarns << "Error fetching navmesh data from URL '" << pURL << "' because " << pErrorReason << llendl; +} + +void LLFloaterPathfindingLinksets::setFetchState(EFetchState pFetchState) +{ + mFetchState = pFetchState; + updateLinksetsStatusMessage(); +} + +void LLFloaterPathfindingLinksets::onApplyFiltersClicked() +{ + applyFilters(); +} + +void LLFloaterPathfindingLinksets::onClearFiltersClicked() +{ + clearFilters(); +} + +void LLFloaterPathfindingLinksets::onLinksetsSelectionChange() +{ + updateLinksetsStatusMessage(); +} + +void LLFloaterPathfindingLinksets::onRefreshLinksetsClicked() +{ + sendNavmeshDataGetRequest(); +} + +void LLFloaterPathfindingLinksets::onSelectAllLinksetsClicked() +{ + selectAllLinksets(); +} + +void LLFloaterPathfindingLinksets::onSelectNoneLinksetsClicked() +{ + selectNoneLinksets(); +} + +void LLFloaterPathfindingLinksets::applyFilters() +{ + mPathfindingLinksets.setNameFilter(mFilterByName->getText()); + mPathfindingLinksets.setDescriptionFilter(mFilterByDescription->getText()); + mPathfindingLinksets.setFixedFilter(mFilterByFixed->get()); + mPathfindingLinksets.setWalkableFilter(mFilterByWalkable->get()); + updateLinksetsList(); +} + +void LLFloaterPathfindingLinksets::clearFilters() +{ + mPathfindingLinksets.clearFilters(); + mFilterByName->setText(LLStringExplicit(mPathfindingLinksets.getNameFilter())); + mFilterByDescription->setText(LLStringExplicit(mPathfindingLinksets.getDescriptionFilter())); + mFilterByFixed->set(mPathfindingLinksets.isFixedFilter()); + mFilterByWalkable->set(mPathfindingLinksets.isWalkableFilter()); + updateLinksetsList(); +} + +void LLFloaterPathfindingLinksets::updateLinksetsList() +{ + mLinksetsScrollList->deleteAllItems(); + updateLinksetsStatusMessage(); const LLVector3& avatarPosition = gAgent.getPositionAgent(); const PathfindingLinksets::PathfindingLinksetMap& linksetMap = mPathfindingLinksets.getFilteredLinksets(); @@ -516,46 +769,6 @@ void LLFloaterPathfindingLinksets::handleNavmeshDataGetReply(const LLSD& pNavmes mLinksetsScrollList->addElement(element); } - setFetchState(kFetchComplete); -} - -void LLFloaterPathfindingLinksets::handleNavmeshDataGetError(const std::string& pURL, const std::string& pErrorReason) -{ - setFetchState(kFetchError); - clearLinksetsList(); - llwarns << "Error fetching navmesh data from URL '" << pURL << "' because " << pErrorReason << llendl; -} - -void LLFloaterPathfindingLinksets::setFetchState(EFetchState pFetchState) -{ - mFetchState = pFetchState; - updateLinksetsStatusMessage(); -} - -void LLFloaterPathfindingLinksets::onLinksetsSelectionChange() -{ - updateLinksetsStatusMessage(); -} - -void LLFloaterPathfindingLinksets::onRefreshLinksetsClicked() -{ - sendNavmeshDataGetRequest(); -} - -void LLFloaterPathfindingLinksets::onSelectAllLinksetsClicked() -{ - selectAllLinksets(); -} - -void LLFloaterPathfindingLinksets::onSelectNoneLinksetsClicked() -{ - selectNoneLinksets(); -} - -void LLFloaterPathfindingLinksets::clearLinksetsList() -{ - mPathfindingLinksets.clearLinksets(); - mLinksetsScrollList->deleteAllItems(); updateLinksetsStatusMessage(); } @@ -626,6 +839,10 @@ void LLFloaterPathfindingLinksets::updateLinksetsStatusMessage() mLinksetsStatus->setText((LLStringExplicit)statusText, styleParams); } +//--------------------------------------------------------------------------- +// NavmeshDataGetResponder +//--------------------------------------------------------------------------- + NavmeshDataGetResponder::NavmeshDataGetResponder(const std::string& pNavmeshDataGetURL, LLFloaterPathfindingLinksets *pLinksetsFloater) : mNavmeshDataGetURL(pNavmeshDataGetURL), mLinksetsFloater(pLinksetsFloater) @@ -646,3 +863,4 @@ void NavmeshDataGetResponder::error(U32 status, const std::string& reason) { mLinksetsFloater->handleNavmeshDataGetError(mNavmeshDataGetURL, reason); } + -- cgit v1.2.3 From 218c8c9476dbc31507b114fd920f001176e28a84 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 12 Jan 2012 12:02:35 -0800 Subject: Adding some fake data to the linksets UI grid for development purposes. --- indra/newview/llfloaterpathfindinglinksets.cpp | 138 +++++++++++++++++++++++++ 1 file changed, 138 insertions(+) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index af9eda51cd..d0c85d3ef6 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -42,6 +42,8 @@ #include "llhttpclient.h" #include "lluuid.h" +#define XXX_STINSON_USE_FAKE_DATA + //--------------------------------------------------------------------------- // NavmeshDataGetResponder //--------------------------------------------------------------------------- @@ -601,6 +603,141 @@ LLFloaterPathfindingLinksets::~LLFloaterPathfindingLinksets() void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() { +#ifdef XXX_STINSON_USE_FAKE_DATA + LLSD allData; + + const std::string firstUUID("37198314751"); + LLSD firstData; + firstData["name"] = "Curabitur malesuada"; + firstData["description"] = "Accusam nominavi contentiones per ad"; + firstData["landimpact"] = S32(57); + firstData["fixed"] = bool(false); + firstData["walkable"] = bool(false); + firstData["phantom"] = bool(false); + firstData["A"] = F32(37.5f); + firstData["B"] = F32(7.8f); + firstData["C"] = F32(98.6f); + firstData["D"] = F32(0.0f); + LLVector3 firstLocation(135.0f, 57.0f, 2.0f); + firstData["position"] = firstLocation.getValue(); + + const std::string secondUUID("5467227"); + LLSD secondData; + secondData["name"] = "At tota"; + secondData["description"] = "His ad placerat tincidun"; + secondData["landimpact"] = S32(2); + secondData["fixed"] = bool(false); + secondData["walkable"] = bool(false); + secondData["phantom"] = bool(true); + secondData["A"] = F32(30.5f); + secondData["B"] = F32(70.8f); + secondData["C"] = F32(100.0f); + secondData["D"] = F32(0.1f); + LLVector3 secondLocation(15.0f, 157.0f, 22.0f); + secondData["position"] = secondLocation.getValue(); + + const std::string thirdUUID("897234"); + LLSD thirdData; + thirdData["name"] = "No soleat"; + thirdData["description"] = ""; + thirdData["landimpact"] = S32(200); + thirdData["fixed"] = bool(false); + thirdData["walkable"] = bool(true); + thirdData["phantom"] = bool(false); + thirdData["A"] = F32(58.5f); + thirdData["B"] = F32(8.0f); + thirdData["C"] = F32(2.0f); + thirdData["D"] = F32(15.5f); + LLVector3 thirdLocation(577.0f, 14.0f, -14.5f); + thirdData["position"] = thirdLocation.getValue(); + + const std::string fourthUUID("498792"); + LLSD fourthData; + fourthData["name"] = "Paulo tritani bonorum"; + fourthData["description"] = "Vis verear impetus"; + fourthData["landimpact"] = S32(56); + fourthData["fixed"] = bool(false); + fourthData["walkable"] = bool(true); + fourthData["phantom"] = bool(true); + fourthData["A"] = F32(100.0f); + fourthData["B"] = F32(100.0f); + fourthData["C"] = F32(0.0f); + fourthData["D"] = F32(0.0f); + LLVector3 fourthLocation(215.0f, 57.0f, 5.0f); + fourthData["position"] = fourthLocation.getValue(); + + const std::string fifthUUID("5996732"); + LLSD fifthData; + fifthData["name"] = "Curabitur malesuada"; + fifthData["description"] = "Reque possit philosophia"; + fifthData["landimpact"] = S32(20); + fifthData["fixed"] = bool(true); + fifthData["walkable"] = bool(false); + fifthData["phantom"] = bool(false); + fifthData["A"] = F32(37.5f); + fifthData["B"] = F32(7.8f); + fifthData["C"] = F32(98.6f); + fifthData["D"] = F32(0.0f); + LLVector3 fifthLocation(135.0f, 57.0f, 2.0f); + fifthData["position"] = fifthLocation.getValue(); + + const std::string sixthUUID("03217522"); + LLSD sixthData; + sixthData["name"] = "At tota"; + sixthData["description"] = "Usu no aliquid dignissim"; + sixthData["landimpact"] = S32(257); + sixthData["fixed"] = bool(true); + sixthData["walkable"] = bool(false); + sixthData["phantom"] = bool(true); + sixthData["A"] = F32(0.0f); + sixthData["B"] = F32(0.0f); + sixthData["C"] = F32(100.0f); + sixthData["D"] = F32(0.1f); + LLVector3 sixthLocation(315.0f, 57.0f, 12.0f); + sixthData["position"] = sixthLocation.getValue(); + + const std::string seventhUUID("7844327"); + LLSD seventhData; + seventhData["name"] = "No soleat"; + seventhData["description"] = "honestatis"; + seventhData["landimpact"] = S32(25); + seventhData["fixed"] = bool(true); + seventhData["walkable"] = bool(true); + seventhData["phantom"] = bool(false); + seventhData["A"] = F32(55.4f); + seventhData["B"] = F32(27.12f); + seventhData["C"] = F32(32.5f); + seventhData["D"] = F32(15.5f); + LLVector3 seventhLocation(7.0f, 0.0f, 0.0f); + seventhData["position"] = seventhLocation.getValue(); + + const std::string eigthUUID("2478739685"); + LLSD eigthData; + eigthData["name"] = "Sea te aliquam"; + eigthData["description"] = ""; + eigthData["landimpact"] = S32(17); + eigthData["fixed"] = bool(true); + eigthData["walkable"] = bool(true); + eigthData["phantom"] = bool(true); + eigthData["A"] = F32(10.0f); + eigthData["B"] = F32(10.0f); + eigthData["C"] = F32(50.0f); + eigthData["D"] = F32(60.0f); + LLVector3 eigthLocation(25.0f, 7.0f, 5.0f); + eigthData["position"] = eigthLocation.getValue(); + + allData[firstUUID] = firstData; + allData[secondUUID] = secondData; + allData[thirdUUID] = thirdData; + allData[fourthUUID] = fourthData; + allData[fifthUUID] = fifthData; + allData[sixthUUID] = sixthData; + allData[seventhUUID] = seventhData; + allData[eigthUUID] = eigthData; + + handleNavmeshDataGetReply(allData); + +#else // XXX_STINSON_USE_FAKE_DATA if (isFetchInProgress()) { if (getFetchState() == kFetchRequestSent) @@ -630,6 +767,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() } } } +#endif } void LLFloaterPathfindingLinksets::handleNavmeshDataGetReply(const LLSD& pNavmeshData) -- cgit v1.2.3 From a2db329ce9349d6c5ca337be284ffbe339d8d864 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 12 Jan 2012 17:47:32 -0800 Subject: PATH-145: Preserving all possible selected items between filter changes. --- indra/newview/llfloaterpathfindinglinksets.cpp | 35 ++++++++++++++++++++------ 1 file changed, 27 insertions(+), 8 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index d0c85d3ef6..fb14563cbf 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -43,6 +43,10 @@ #include "lluuid.h" #define XXX_STINSON_USE_FAKE_DATA +#ifdef XXX_STINSON_USE_FAKE_DATA +#include "llviewerobject.h" +#include "llviewerobjectlist.h" +#endif // XXX_STINSON_USE_FAKE_DATA //--------------------------------------------------------------------------- // NavmeshDataGetResponder @@ -606,7 +610,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() #ifdef XXX_STINSON_USE_FAKE_DATA LLSD allData; - const std::string firstUUID("37198314751"); + const std::string firstUUID(gObjectList.getObject(0)->getID().asString()); LLSD firstData; firstData["name"] = "Curabitur malesuada"; firstData["description"] = "Accusam nominavi contentiones per ad"; @@ -621,7 +625,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 firstLocation(135.0f, 57.0f, 2.0f); firstData["position"] = firstLocation.getValue(); - const std::string secondUUID("5467227"); + const std::string secondUUID(gObjectList.getObject(1)->getID().asString()); LLSD secondData; secondData["name"] = "At tota"; secondData["description"] = "His ad placerat tincidun"; @@ -636,7 +640,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 secondLocation(15.0f, 157.0f, 22.0f); secondData["position"] = secondLocation.getValue(); - const std::string thirdUUID("897234"); + const std::string thirdUUID(gObjectList.getObject(2)->getID().asString()); LLSD thirdData; thirdData["name"] = "No soleat"; thirdData["description"] = ""; @@ -651,7 +655,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 thirdLocation(577.0f, 14.0f, -14.5f); thirdData["position"] = thirdLocation.getValue(); - const std::string fourthUUID("498792"); + const std::string fourthUUID(gObjectList.getObject(3)->getID().asString()); LLSD fourthData; fourthData["name"] = "Paulo tritani bonorum"; fourthData["description"] = "Vis verear impetus"; @@ -666,7 +670,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 fourthLocation(215.0f, 57.0f, 5.0f); fourthData["position"] = fourthLocation.getValue(); - const std::string fifthUUID("5996732"); + const std::string fifthUUID(gObjectList.getObject(4)->getID().asString()); LLSD fifthData; fifthData["name"] = "Curabitur malesuada"; fifthData["description"] = "Reque possit philosophia"; @@ -681,7 +685,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 fifthLocation(135.0f, 57.0f, 2.0f); fifthData["position"] = fifthLocation.getValue(); - const std::string sixthUUID("03217522"); + const std::string sixthUUID(gObjectList.getObject(5)->getID().asString()); LLSD sixthData; sixthData["name"] = "At tota"; sixthData["description"] = "Usu no aliquid dignissim"; @@ -696,7 +700,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 sixthLocation(315.0f, 57.0f, 12.0f); sixthData["position"] = sixthLocation.getValue(); - const std::string seventhUUID("7844327"); + const std::string seventhUUID(gObjectList.getObject(6)->getID().asString()); LLSD seventhData; seventhData["name"] = "No soleat"; seventhData["description"] = "honestatis"; @@ -711,7 +715,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLVector3 seventhLocation(7.0f, 0.0f, 0.0f); seventhData["position"] = seventhLocation.getValue(); - const std::string eigthUUID("2478739685"); + const std::string eigthUUID(gObjectList.getObject(7)->getID().asString()); LLSD eigthData; eigthData["name"] = "Sea te aliquam"; eigthData["description"] = ""; @@ -843,6 +847,20 @@ void LLFloaterPathfindingLinksets::clearFilters() void LLFloaterPathfindingLinksets::updateLinksetsList() { + std::vector selectedItems = mLinksetsScrollList->getAllSelected(); + int numSelectedItems = selectedItems.size(); + uuid_vec_t selectedUUIDs; + if (numSelectedItems > 0) + { + selectedUUIDs.reserve(selectedItems.size()); + for (std::vector::const_iterator itemIter = selectedItems.begin(); + itemIter != selectedItems.end(); ++itemIter) + { + const LLScrollListItem *listItem = *itemIter; + selectedUUIDs.push_back(listItem->getUUID()); + } + } + mLinksetsScrollList->deleteAllItems(); updateLinksetsStatusMessage(); @@ -907,6 +925,7 @@ void LLFloaterPathfindingLinksets::updateLinksetsList() mLinksetsScrollList->addElement(element); } + mLinksetsScrollList->selectMultiple(selectedUUIDs); updateLinksetsStatusMessage(); } -- cgit v1.2.3 From 2cc9c54fc6027871a320b6a3dfbb212994eb949f Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Fri, 13 Jan 2012 11:12:15 -0800 Subject: Updating to the latest llpathinglib package. --- indra/newview/llfloaterpathfindinglinksets.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index fb14563cbf..ab2f551228 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -42,7 +42,7 @@ #include "llhttpclient.h" #include "lluuid.h" -#define XXX_STINSON_USE_FAKE_DATA +//#define XXX_STINSON_USE_FAKE_DATA #ifdef XXX_STINSON_USE_FAKE_DATA #include "llviewerobject.h" #include "llviewerobjectlist.h" -- cgit v1.2.3 From fa03d3ee3d9bcf213754250a8180a65156bffe8d Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Fri, 13 Jan 2012 17:16:43 -0800 Subject: PATH-186: Starting to build some baseline UI functionality to support the editing of linnkset fields. --- indra/newview/llfloaterpathfindinglinksets.cpp | 125 ++++++++++++++++++++++++- 1 file changed, 123 insertions(+), 2 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index ab2f551228..11211feb43 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -30,6 +30,7 @@ #include "llfloaterpathfindinglinksets.h" #include "llsd.h" #include "v3math.h" +#include "lltextvalidate.h" #include "llagent.h" #include "llfloater.h" #include "llfloaterreg.h" @@ -37,6 +38,7 @@ #include "lllineeditor.h" #include "llscrolllistctrl.h" #include "llcheckboxctrl.h" +#include "llbutton.h" #include "llresmgr.h" #include "llviewerregion.h" #include "llhttpclient.h" @@ -549,6 +551,36 @@ BOOL LLFloaterPathfindingLinksets::postBuild() llassert(mFilterByWalkable != NULL); mFilterByWalkable->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyFiltersClicked, this)); + mEditFixed = findChild("edit_fixed_value"); + llassert(mEditFixed != NULL); + + mEditWalkable = findChild("edit_walkable_value"); + llassert(mEditWalkable != NULL); + + mEditPhantom = findChild("edit_phantom_value"); + llassert(mEditPhantom != NULL); + + mEditA = findChild("edit_a_value"); + llassert(mEditA != NULL); + mEditA->setPrevalidate(LLTextValidate::validateFloat); + + mEditB = findChild("edit_b_value"); + llassert(mEditB != NULL); + mEditB->setPrevalidate(LLTextValidate::validateFloat); + + mEditC = findChild("edit_c_value"); + llassert(mEditC != NULL); + mEditC->setPrevalidate(LLTextValidate::validateFloat); + + mEditD = findChild("edit_d_value"); + llassert(mEditD != NULL); + mEditD->setPrevalidate(LLTextValidate::validateFloat); + + mApplyEdits = findChild("apply_edit_values"); + llassert(mApplyEdits != NULL); + mApplyEdits->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyChangesClicked, this)); + mApplyEdits->setEnabled(false); + setFetchState(kFetchInitial); return LLFloater::postBuild(); @@ -597,7 +629,14 @@ LLFloaterPathfindingLinksets::LLFloaterPathfindingLinksets(const LLSD& pSeed) mFilterByName(NULL), mFilterByDescription(NULL), mFilterByFixed(NULL), - mFilterByWalkable(NULL) + mFilterByWalkable(NULL), + mEditFixed(NULL), + mEditWalkable(NULL), + mEditA(NULL), + mEditB(NULL), + mEditC(NULL), + mEditD(NULL), + mApplyEdits(NULL) { } @@ -809,6 +848,7 @@ void LLFloaterPathfindingLinksets::onClearFiltersClicked() void LLFloaterPathfindingLinksets::onLinksetsSelectionChange() { updateLinksetsStatusMessage(); + updateEditFields(); } void LLFloaterPathfindingLinksets::onRefreshLinksetsClicked() @@ -826,6 +866,11 @@ void LLFloaterPathfindingLinksets::onSelectNoneLinksetsClicked() selectNoneLinksets(); } +void LLFloaterPathfindingLinksets::onApplyChangesClicked() +{ + applyEditFields(); +} + void LLFloaterPathfindingLinksets::applyFilters() { mPathfindingLinksets.setNameFilter(mFilterByName->getText()); @@ -996,6 +1041,83 @@ void LLFloaterPathfindingLinksets::updateLinksetsStatusMessage() mLinksetsStatus->setText((LLStringExplicit)statusText, styleParams); } +void LLFloaterPathfindingLinksets::updateEditFields() +{ + std::vector selectedItems = mLinksetsScrollList->getAllSelected(); + if (selectedItems.empty()) + { + mEditFixed->clear(); + mEditWalkable->clear(); + mEditPhantom->clear(); + mEditA->clear(); + mEditB->clear(); + mEditC->clear(); + mEditD->clear(); + + mApplyEdits->setEnabled(false); + } + else + { + LLScrollListItem *firstItem = selectedItems.front(); + + const PathfindingLinksets::PathfindingLinksetMap &linksetsMap = mPathfindingLinksets.getAllLinksets(); + PathfindingLinksets::PathfindingLinksetMap::const_iterator linksetIter = linksetsMap.find(firstItem->getUUID().asString()); + const PathfindingLinkset &linkset(linksetIter->second); + + mEditFixed->set(linkset.isFixed()); + mEditWalkable->set(linkset.isWalkable()); + mEditPhantom->set(linkset.isPhantom()); + mEditA->setValue(LLSD(linkset.getA())); + mEditB->setValue(LLSD(linkset.getB())); + mEditC->setValue(LLSD(linkset.getC())); + mEditD->setValue(LLSD(linkset.getD())); + + mApplyEdits->setEnabled(true); + } +} + +void LLFloaterPathfindingLinksets::applyEditFields() +{ + BOOL isFixedBool = mEditFixed->getValue(); + BOOL isWalkableBool = mEditWalkable->getValue(); + BOOL isPhantomBool = mEditPhantom->getValue(); + const std::string &aString = mEditA->getText(); + const std::string &bString = mEditB->getText(); + const std::string &cString = mEditC->getText(); + const std::string &dString = mEditD->getText(); + F32 aValue = (F32)atof(aString.c_str()); + F32 bValue = (F32)atof(bString.c_str()); + F32 cValue = (F32)atof(cString.c_str()); + F32 dValue = (F32)atof(dString.c_str()); + + LLSD isFixed = (bool)isFixedBool; + LLSD isWalkable = (bool)isWalkableBool; + LLSD isPhantom = (bool)isPhantomBool; + LLSD a = aValue; + LLSD b = bValue; + LLSD c = cValue; + LLSD d = dValue; + + LLSD applyData; + applyData["fixed"] = isFixed; + applyData["walkable"] = isWalkable; + applyData["phantom"] = isPhantom; + applyData["a"] = a; + applyData["b"] = b; + applyData["c"] = c; + applyData["d"] = d; + + llinfos << "Apply changes:" << llendl; + llinfos << " isFixed: " << isFixed << llendl; + llinfos << " isWalkable: " << isWalkable << llendl; + llinfos << " isPhantom: " << isPhantom << llendl; + llinfos << " a: " << a << llendl; + llinfos << " b: " << b << llendl; + llinfos << " c: " << c << llendl; + llinfos << " d: " << d << llendl; + llinfos << " applyData: " << applyData << llendl; +} + //--------------------------------------------------------------------------- // NavmeshDataGetResponder //--------------------------------------------------------------------------- @@ -1020,4 +1142,3 @@ void NavmeshDataGetResponder::error(U32 status, const std::string& reason) { mLinksetsFloater->handleNavmeshDataGetError(mNavmeshDataGetURL, reason); } - -- cgit v1.2.3 From 7e213192a2b799e0b3d8590bbc5c81c80a2ee0fa Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 17 Jan 2012 17:31:46 -0800 Subject: PATH-186: Enabling and disabling the edit fields based on whether linksets are selected. --- indra/newview/llfloaterpathfindinglinksets.cpp | 44 ++++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 11211feb43..732427103f 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -560,6 +560,21 @@ BOOL LLFloaterPathfindingLinksets::postBuild() mEditPhantom = findChild("edit_phantom_value"); llassert(mEditPhantom != NULL); + mLabelWalkabilityCoefficients = findChild("walkability_coefficients_label"); + llassert(mLabelWalkabilityCoefficients != NULL); + + mLabelEditA = findChild("edit_a_label"); + llassert(mLabelEditA != NULL); + + mLabelEditB = findChild("edit_b_label"); + llassert(mLabelEditB != NULL); + + mLabelEditC = findChild("edit_c_label"); + llassert(mLabelEditC != NULL); + + mLabelEditD = findChild("edit_d_label"); + llassert(mLabelEditD != NULL); + mEditA = findChild("edit_a_value"); llassert(mEditA != NULL); mEditA->setPrevalidate(LLTextValidate::validateFloat); @@ -579,8 +594,8 @@ BOOL LLFloaterPathfindingLinksets::postBuild() mApplyEdits = findChild("apply_edit_values"); llassert(mApplyEdits != NULL); mApplyEdits->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyChangesClicked, this)); - mApplyEdits->setEnabled(false); + setEnableEditFields(false); setFetchState(kFetchInitial); return LLFloater::postBuild(); @@ -632,6 +647,12 @@ LLFloaterPathfindingLinksets::LLFloaterPathfindingLinksets(const LLSD& pSeed) mFilterByWalkable(NULL), mEditFixed(NULL), mEditWalkable(NULL), + mEditPhantom(NULL), + mLabelWalkabilityCoefficients(NULL), + mLabelEditA(NULL), + mLabelEditB(NULL), + mLabelEditC(NULL), + mLabelEditD(NULL), mEditA(NULL), mEditB(NULL), mEditC(NULL), @@ -1054,7 +1075,7 @@ void LLFloaterPathfindingLinksets::updateEditFields() mEditC->clear(); mEditD->clear(); - mApplyEdits->setEnabled(false); + setEnableEditFields(false); } else { @@ -1072,7 +1093,7 @@ void LLFloaterPathfindingLinksets::updateEditFields() mEditC->setValue(LLSD(linkset.getC())); mEditD->setValue(LLSD(linkset.getD())); - mApplyEdits->setEnabled(true); + setEnableEditFields(true); } } @@ -1118,6 +1139,23 @@ void LLFloaterPathfindingLinksets::applyEditFields() llinfos << " applyData: " << applyData << llendl; } +void LLFloaterPathfindingLinksets::setEnableEditFields(BOOL pEnabled) +{ + mEditFixed->setEnabled(pEnabled); + mEditWalkable->setEnabled(pEnabled); + mEditPhantom->setEnabled(pEnabled); + mLabelWalkabilityCoefficients->setEnabled(pEnabled); + mLabelEditA->setEnabled(pEnabled); + mLabelEditB->setEnabled(pEnabled); + mLabelEditC->setEnabled(pEnabled); + mLabelEditD->setEnabled(pEnabled); + mEditA->setEnabled(pEnabled); + mEditB->setEnabled(pEnabled); + mEditC->setEnabled(pEnabled); + mEditD->setEnabled(pEnabled); + mApplyEdits->setEnabled(pEnabled); +} + //--------------------------------------------------------------------------- // NavmeshDataGetResponder //--------------------------------------------------------------------------- -- cgit v1.2.3 From ceac8882c69eab1447ded270c8d93334fd3180d0 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 11:24:33 -0800 Subject: PATH-186: Sending the PUT to update the modified fields. However, still relying on the GET response handlers for now. --- indra/newview/llfloaterpathfindinglinksets.cpp | 248 ++++++++++++++++++++----- 1 file changed, 197 insertions(+), 51 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 732427103f..29cfefa2d3 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -36,6 +36,7 @@ #include "llfloaterreg.h" #include "lltextbase.h" #include "lllineeditor.h" +#include "llscrolllistitem.h" #include "llscrolllistctrl.h" #include "llcheckboxctrl.h" #include "llbutton.h" @@ -70,6 +71,26 @@ private: LLFloaterPathfindingLinksets *mLinksetsFloater; }; +//--------------------------------------------------------------------------- +// NavmeshDataPutResponder +//--------------------------------------------------------------------------- + +class NavmeshDataPutResponder : public LLHTTPClient::Responder +{ +public: + NavmeshDataPutResponder(const std::string& pNavmeshDataPutURL, LLFloaterPathfindingLinksets *pLinksetsFloater); + virtual ~NavmeshDataPutResponder(); + + virtual void result(const LLSD& pContent); + virtual void error(U32 pStatus, const std::string& pReason); + +private: + NavmeshDataPutResponder(const NavmeshDataPutResponder& pOther); + + std::string mNavmeshDataPutURL; + LLFloaterPathfindingLinksets *mLinksetsFloater; +}; + //--------------------------------------------------------------------------- // PathfindingLinkset //--------------------------------------------------------------------------- @@ -815,25 +836,34 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() mPathfindingLinksets.clearLinksets(); updateLinksetsList(); - LLViewerRegion* region = gAgent.getRegion(); - if (region != NULL) + std::string navmeshDataURL = this->getCapabilityURL(); + if (navmeshDataURL.empty()) { - std::string navmeshDataURL = region->getCapability("ObjectNavmesh"); - if (navmeshDataURL.empty()) - { - setFetchState(kFetchComplete); - llwarns << "cannot query navmesh data from current region '" << region->getName() << "'" << llendl; - } - else - { - setFetchState(kFetchRequestSent); - LLHTTPClient::get(navmeshDataURL, new NavmeshDataGetResponder(navmeshDataURL, this)); - } + setFetchState(kFetchComplete); + llwarns << "cannot query navmesh data from current region '" << getRegionName() << "'" << llendl; + } + else + { + setFetchState(kFetchRequestSent); + LLHTTPClient::get(navmeshDataURL, new NavmeshDataGetResponder(navmeshDataURL, this)); } } #endif } +void LLFloaterPathfindingLinksets::sendNavmeshDataPutRequest(const LLSD& pPostData) +{ + std::string navmeshDataURL = this->getCapabilityURL(); + if (navmeshDataURL.empty()) + { + llwarns << "cannot put navmesh data for current region '" << getRegionName() << "'" << llendl; + } + else + { + LLHTTPClient::put(navmeshDataURL, pPostData, new NavmeshDataPutResponder(navmeshDataURL, this)); + } +} + void LLFloaterPathfindingLinksets::handleNavmeshDataGetReply(const LLSD& pNavmeshData) { setFetchState(kFetchReceived); @@ -850,6 +880,48 @@ void LLFloaterPathfindingLinksets::handleNavmeshDataGetError(const std::string& llwarns << "Error fetching navmesh data from URL '" << pURL << "' because " << pErrorReason << llendl; } +void LLFloaterPathfindingLinksets::handleNavmeshDataPutReply(const LLSD& pModifiedData) +{ + setFetchState(kFetchReceived); + mPathfindingLinksets.parseNavmeshData(pModifiedData); + updateLinksetsList(); + setFetchState(kFetchComplete); +} + +void LLFloaterPathfindingLinksets::handleNavmeshDataPutError(const std::string& pURL, const std::string& pErrorReason) +{ + setFetchState(kFetchError); + mPathfindingLinksets.clearLinksets(); + updateLinksetsList(); + llwarns << "Error putting navmesh data to URL '" << pURL << "' because " << pErrorReason << llendl; +} + +std::string LLFloaterPathfindingLinksets::getRegionName() const +{ + std::string regionName(""); + + LLViewerRegion* region = gAgent.getRegion(); + if (region != NULL) + { + regionName = region->getName(); + } + + return regionName; +} + +std::string LLFloaterPathfindingLinksets::getCapabilityURL() const +{ + std::string navmeshDataURL(""); + + LLViewerRegion* region = gAgent.getRegion(); + if (region != NULL) + { + navmeshDataURL = region->getCapability("ObjectNavmesh"); + } + + return navmeshDataURL; +} + void LLFloaterPathfindingLinksets::setFetchState(EFetchState pFetchState) { mFetchState = pFetchState; @@ -1099,44 +1171,93 @@ void LLFloaterPathfindingLinksets::updateEditFields() void LLFloaterPathfindingLinksets::applyEditFields() { - BOOL isFixedBool = mEditFixed->getValue(); - BOOL isWalkableBool = mEditWalkable->getValue(); - BOOL isPhantomBool = mEditPhantom->getValue(); - const std::string &aString = mEditA->getText(); - const std::string &bString = mEditB->getText(); - const std::string &cString = mEditC->getText(); - const std::string &dString = mEditD->getText(); - F32 aValue = (F32)atof(aString.c_str()); - F32 bValue = (F32)atof(bString.c_str()); - F32 cValue = (F32)atof(cString.c_str()); - F32 dValue = (F32)atof(dString.c_str()); - - LLSD isFixed = (bool)isFixedBool; - LLSD isWalkable = (bool)isWalkableBool; - LLSD isPhantom = (bool)isPhantomBool; - LLSD a = aValue; - LLSD b = bValue; - LLSD c = cValue; - LLSD d = dValue; - - LLSD applyData; - applyData["fixed"] = isFixed; - applyData["walkable"] = isWalkable; - applyData["phantom"] = isPhantom; - applyData["a"] = a; - applyData["b"] = b; - applyData["c"] = c; - applyData["d"] = d; - - llinfos << "Apply changes:" << llendl; - llinfos << " isFixed: " << isFixed << llendl; - llinfos << " isWalkable: " << isWalkable << llendl; - llinfos << " isPhantom: " << isPhantom << llendl; - llinfos << " a: " << a << llendl; - llinfos << " b: " << b << llendl; - llinfos << " c: " << c << llendl; - llinfos << " d: " << d << llendl; - llinfos << " applyData: " << applyData << llendl; + std::vector selectedItems = mLinksetsScrollList->getAllSelected(); + if (!selectedItems.empty()) + { + BOOL isFixedBool = mEditFixed->getValue(); + BOOL isWalkableBool = mEditWalkable->getValue(); + BOOL isPhantomBool = mEditPhantom->getValue(); + const std::string &aString = mEditA->getText(); + const std::string &bString = mEditB->getText(); + const std::string &cString = mEditC->getText(); + const std::string &dString = mEditD->getText(); + F32 aValue = (F32)atof(aString.c_str()); + F32 bValue = (F32)atof(bString.c_str()); + F32 cValue = (F32)atof(cString.c_str()); + F32 dValue = (F32)atof(dString.c_str()); + + LLSD isFixed = (bool)isFixedBool; + LLSD isWalkable = (bool)isWalkableBool; + LLSD isPhantom = (bool)isPhantomBool; + LLSD a = aValue; + LLSD b = bValue; + LLSD c = cValue; + LLSD d = dValue; + + const PathfindingLinksets::PathfindingLinksetMap &linksetsMap = mPathfindingLinksets.getAllLinksets(); + + LLSD editData; + for (std::vector::const_iterator itemIter = selectedItems.begin(); + itemIter != selectedItems.end(); ++itemIter) + { + const LLScrollListItem *listItem = *itemIter; + LLUUID uuid = listItem->getUUID(); + + const PathfindingLinksets::PathfindingLinksetMap::const_iterator linksetIter = linksetsMap.find(uuid.asString()); + const PathfindingLinkset &linkset = linksetIter->second; + + llinfos << "Item changes:" << llendl; + llinfos << " UUID: " << uuid << llendl; + LLSD itemData; + if (linkset.isFixed() != isFixedBool) + { + itemData["fixed"] = isFixed; + llinfos << " isFixed: " << isFixed << llendl; + } + if (linkset.isWalkable() != isWalkableBool) + { + itemData["walkable"] = isWalkable; + llinfos << " isWalkable: " << isWalkable << llendl; + } + if (linkset.isPhantom() != isPhantomBool) + { + itemData["phantom"] = isPhantom; + llinfos << " isPhantom: " << isPhantom << llendl; + } + if (linkset.getA() != aValue) + { + itemData["a"] = a; + llinfos << " a: " << a << llendl; + } + if (linkset.getB() != bValue) + { + itemData["b"] = b; + llinfos << " b: " << b << llendl; + } + if (linkset.getC() != cValue) + { + itemData["c"] = c; + llinfos << " c: " << c << llendl; + } + if (linkset.getD() != dValue) + { + itemData["d"] = d; + llinfos << " d: " << d << llendl; + } + + llinfos << " itemData: " << itemData << llendl; + editData[uuid.asString()] = itemData; + } + llinfos << "All Data: " << editData << llendl; + if (editData.isUndefined()) + { + llwarns << "No PUT data specified" << llendl; + } + else + { + sendNavmeshDataPutRequest(editData); + } + } } void LLFloaterPathfindingLinksets::setEnableEditFields(BOOL pEnabled) @@ -1180,3 +1301,28 @@ void NavmeshDataGetResponder::error(U32 status, const std::string& reason) { mLinksetsFloater->handleNavmeshDataGetError(mNavmeshDataGetURL, reason); } + +//--------------------------------------------------------------------------- +// NavmeshDataPutResponder +//--------------------------------------------------------------------------- + +NavmeshDataPutResponder::NavmeshDataPutResponder(const std::string& pNavmeshDataPutURL, LLFloaterPathfindingLinksets *pLinksetsFloater) + : mNavmeshDataPutURL(pNavmeshDataPutURL), + mLinksetsFloater(pLinksetsFloater) +{ +} + +NavmeshDataPutResponder::~NavmeshDataPutResponder() +{ + mLinksetsFloater = NULL; +} + +void NavmeshDataPutResponder::result(const LLSD& pContent) +{ + mLinksetsFloater->handleNavmeshDataPutReply(pContent); +} + +void NavmeshDataPutResponder::error(U32 status, const std::string& reason) +{ + mLinksetsFloater->handleNavmeshDataPutError(mNavmeshDataPutURL, reason); +} -- cgit v1.2.3 From 3329ba31b5605415fd5a7c49552ebf50726f4c0c Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 12:55:50 -0800 Subject: PATH-186: Completing the linkset editing functionality. Updating the walkability coefficients in the POST body to be upper-case to match server-side. Also, updating the "fixed" parameter to be "permanent" to reflect the upcoming server-side nomenclature change. --- indra/newview/llfloaterpathfindinglinksets.cpp | 95 ++++++++++++-------------- 1 file changed, 42 insertions(+), 53 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 29cfefa2d3..506cc2ea87 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -122,9 +122,9 @@ PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNa llassert(pNavmeshItem.get("landimpact").asInteger() >= 0); mLandImpact = pNavmeshItem.get("landimpact").asInteger(); - llassert(pNavmeshItem.has("fixed")); - llassert(pNavmeshItem.get("fixed").isBoolean()); - mIsFixed = pNavmeshItem.get("fixed").asBoolean(); + llassert(pNavmeshItem.has("permanent")); + llassert(pNavmeshItem.get("permanent").isBoolean()); + mIsFixed = pNavmeshItem.get("permanent").asBoolean(); llassert(pNavmeshItem.has("walkable")); llassert(pNavmeshItem.get("walkable").isBoolean()); @@ -136,19 +136,19 @@ PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNa llassert(pNavmeshItem.has("A")); llassert(pNavmeshItem.get("A").isReal()); - mA = pNavmeshItem.get("A").asReal(); + mA = pNavmeshItem.get("A").asReal() * 100.0f; llassert(pNavmeshItem.has("B")); llassert(pNavmeshItem.get("B").isReal()); - mB = pNavmeshItem.get("B").asReal(); + mB = pNavmeshItem.get("B").asReal() * 100.0f; llassert(pNavmeshItem.has("C")); llassert(pNavmeshItem.get("C").isReal()); - mC = pNavmeshItem.get("C").asReal(); + mC = pNavmeshItem.get("C").asReal() * 100.0f; llassert(pNavmeshItem.has("D")); llassert(pNavmeshItem.get("D").isReal()); - mD = pNavmeshItem.get("D").asReal(); + mD = pNavmeshItem.get("D").asReal() * 100.0f; llassert(pNavmeshItem.has("position")); llassert(pNavmeshItem.get("position").isArray()); @@ -699,9 +699,9 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() firstData["fixed"] = bool(false); firstData["walkable"] = bool(false); firstData["phantom"] = bool(false); - firstData["A"] = F32(37.5f); - firstData["B"] = F32(7.8f); - firstData["C"] = F32(98.6f); + firstData["A"] = F32(0.375f); + firstData["B"] = F32(0.078f); + firstData["C"] = F32(0.986f); firstData["D"] = F32(0.0f); LLVector3 firstLocation(135.0f, 57.0f, 2.0f); firstData["position"] = firstLocation.getValue(); @@ -714,10 +714,10 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() secondData["fixed"] = bool(false); secondData["walkable"] = bool(false); secondData["phantom"] = bool(true); - secondData["A"] = F32(30.5f); - secondData["B"] = F32(70.8f); - secondData["C"] = F32(100.0f); - secondData["D"] = F32(0.1f); + secondData["A"] = F32(0.305f); + secondData["B"] = F32(0.708f); + secondData["C"] = F32(1.0f); + secondData["D"] = F32(0.001f); LLVector3 secondLocation(15.0f, 157.0f, 22.0f); secondData["position"] = secondLocation.getValue(); @@ -729,10 +729,10 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() thirdData["fixed"] = bool(false); thirdData["walkable"] = bool(true); thirdData["phantom"] = bool(false); - thirdData["A"] = F32(58.5f); - thirdData["B"] = F32(8.0f); - thirdData["C"] = F32(2.0f); - thirdData["D"] = F32(15.5f); + thirdData["A"] = F32(0.585f); + thirdData["B"] = F32(0.08f); + thirdData["C"] = F32(0.02f); + thirdData["D"] = F32(0.155f); LLVector3 thirdLocation(577.0f, 14.0f, -14.5f); thirdData["position"] = thirdLocation.getValue(); @@ -744,8 +744,8 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() fourthData["fixed"] = bool(false); fourthData["walkable"] = bool(true); fourthData["phantom"] = bool(true); - fourthData["A"] = F32(100.0f); - fourthData["B"] = F32(100.0f); + fourthData["A"] = F32(1.0f); + fourthData["B"] = F32(1.0f); fourthData["C"] = F32(0.0f); fourthData["D"] = F32(0.0f); LLVector3 fourthLocation(215.0f, 57.0f, 5.0f); @@ -759,9 +759,9 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() fifthData["fixed"] = bool(true); fifthData["walkable"] = bool(false); fifthData["phantom"] = bool(false); - fifthData["A"] = F32(37.5f); - fifthData["B"] = F32(7.8f); - fifthData["C"] = F32(98.6f); + fifthData["A"] = F32(0.375f); + fifthData["B"] = F32(0.078f); + fifthData["C"] = F32(0.986f); fifthData["D"] = F32(0.0f); LLVector3 fifthLocation(135.0f, 57.0f, 2.0f); fifthData["position"] = fifthLocation.getValue(); @@ -776,8 +776,8 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() sixthData["phantom"] = bool(true); sixthData["A"] = F32(0.0f); sixthData["B"] = F32(0.0f); - sixthData["C"] = F32(100.0f); - sixthData["D"] = F32(0.1f); + sixthData["C"] = F32(1.0f); + sixthData["D"] = F32(0.001f); LLVector3 sixthLocation(315.0f, 57.0f, 12.0f); sixthData["position"] = sixthLocation.getValue(); @@ -789,10 +789,10 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() seventhData["fixed"] = bool(true); seventhData["walkable"] = bool(true); seventhData["phantom"] = bool(false); - seventhData["A"] = F32(55.4f); - seventhData["B"] = F32(27.12f); - seventhData["C"] = F32(32.5f); - seventhData["D"] = F32(15.5f); + seventhData["A"] = F32(0.554f); + seventhData["B"] = F32(0.2712f); + seventhData["C"] = F32(0.325f); + seventhData["D"] = F32(0.155f); LLVector3 seventhLocation(7.0f, 0.0f, 0.0f); seventhData["position"] = seventhLocation.getValue(); @@ -804,10 +804,10 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() eigthData["fixed"] = bool(true); eigthData["walkable"] = bool(true); eigthData["phantom"] = bool(true); - eigthData["A"] = F32(10.0f); - eigthData["B"] = F32(10.0f); - eigthData["C"] = F32(50.0f); - eigthData["D"] = F32(60.0f); + eigthData["A"] = F32(0.1f); + eigthData["B"] = F32(0.1f); + eigthData["C"] = F32(0.5f); + eigthData["D"] = F32(0.6f); LLVector3 eigthLocation(25.0f, 7.0f, 5.0f); eigthData["position"] = eigthLocation.getValue(); @@ -1189,10 +1189,10 @@ void LLFloaterPathfindingLinksets::applyEditFields() LLSD isFixed = (bool)isFixedBool; LLSD isWalkable = (bool)isWalkableBool; LLSD isPhantom = (bool)isPhantomBool; - LLSD a = aValue; - LLSD b = bValue; - LLSD c = cValue; - LLSD d = dValue; + LLSD a = aValue / 100.0f; + LLSD b = bValue / 100.0f; + LLSD c = cValue / 100.0f; + LLSD d = dValue / 100.0f; const PathfindingLinksets::PathfindingLinksetMap &linksetsMap = mPathfindingLinksets.getAllLinksets(); @@ -1206,49 +1206,38 @@ void LLFloaterPathfindingLinksets::applyEditFields() const PathfindingLinksets::PathfindingLinksetMap::const_iterator linksetIter = linksetsMap.find(uuid.asString()); const PathfindingLinkset &linkset = linksetIter->second; - llinfos << "Item changes:" << llendl; - llinfos << " UUID: " << uuid << llendl; LLSD itemData; if (linkset.isFixed() != isFixedBool) { - itemData["fixed"] = isFixed; - llinfos << " isFixed: " << isFixed << llendl; + itemData["permanent"] = isFixed; } if (linkset.isWalkable() != isWalkableBool) { itemData["walkable"] = isWalkable; - llinfos << " isWalkable: " << isWalkable << llendl; } if (linkset.isPhantom() != isPhantomBool) { itemData["phantom"] = isPhantom; - llinfos << " isPhantom: " << isPhantom << llendl; } if (linkset.getA() != aValue) { - itemData["a"] = a; - llinfos << " a: " << a << llendl; + itemData["A"] = a; } if (linkset.getB() != bValue) { - itemData["b"] = b; - llinfos << " b: " << b << llendl; + itemData["B"] = b; } if (linkset.getC() != cValue) { - itemData["c"] = c; - llinfos << " c: " << c << llendl; + itemData["C"] = c; } if (linkset.getD() != dValue) { - itemData["d"] = d; - llinfos << " d: " << d << llendl; + itemData["D"] = d; } - llinfos << " itemData: " << itemData << llendl; editData[uuid.asString()] = itemData; } - llinfos << "All Data: " << editData << llendl; if (editData.isUndefined()) { llwarns << "No PUT data specified" << llendl; -- cgit v1.2.3 From 347f73c209eeeffa2ac457f201778d5e21072371 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 13:14:48 -0800 Subject: PATH-186: Removing fake data code. --- indra/newview/llfloaterpathfindinglinksets.cpp | 142 ------------------------- 1 file changed, 142 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 506cc2ea87..c70430e7f7 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -45,12 +45,6 @@ #include "llhttpclient.h" #include "lluuid.h" -//#define XXX_STINSON_USE_FAKE_DATA -#ifdef XXX_STINSON_USE_FAKE_DATA -#include "llviewerobject.h" -#include "llviewerobjectlist.h" -#endif // XXX_STINSON_USE_FAKE_DATA - //--------------------------------------------------------------------------- // NavmeshDataGetResponder //--------------------------------------------------------------------------- @@ -688,141 +682,6 @@ LLFloaterPathfindingLinksets::~LLFloaterPathfindingLinksets() void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() { -#ifdef XXX_STINSON_USE_FAKE_DATA - LLSD allData; - - const std::string firstUUID(gObjectList.getObject(0)->getID().asString()); - LLSD firstData; - firstData["name"] = "Curabitur malesuada"; - firstData["description"] = "Accusam nominavi contentiones per ad"; - firstData["landimpact"] = S32(57); - firstData["fixed"] = bool(false); - firstData["walkable"] = bool(false); - firstData["phantom"] = bool(false); - firstData["A"] = F32(0.375f); - firstData["B"] = F32(0.078f); - firstData["C"] = F32(0.986f); - firstData["D"] = F32(0.0f); - LLVector3 firstLocation(135.0f, 57.0f, 2.0f); - firstData["position"] = firstLocation.getValue(); - - const std::string secondUUID(gObjectList.getObject(1)->getID().asString()); - LLSD secondData; - secondData["name"] = "At tota"; - secondData["description"] = "His ad placerat tincidun"; - secondData["landimpact"] = S32(2); - secondData["fixed"] = bool(false); - secondData["walkable"] = bool(false); - secondData["phantom"] = bool(true); - secondData["A"] = F32(0.305f); - secondData["B"] = F32(0.708f); - secondData["C"] = F32(1.0f); - secondData["D"] = F32(0.001f); - LLVector3 secondLocation(15.0f, 157.0f, 22.0f); - secondData["position"] = secondLocation.getValue(); - - const std::string thirdUUID(gObjectList.getObject(2)->getID().asString()); - LLSD thirdData; - thirdData["name"] = "No soleat"; - thirdData["description"] = ""; - thirdData["landimpact"] = S32(200); - thirdData["fixed"] = bool(false); - thirdData["walkable"] = bool(true); - thirdData["phantom"] = bool(false); - thirdData["A"] = F32(0.585f); - thirdData["B"] = F32(0.08f); - thirdData["C"] = F32(0.02f); - thirdData["D"] = F32(0.155f); - LLVector3 thirdLocation(577.0f, 14.0f, -14.5f); - thirdData["position"] = thirdLocation.getValue(); - - const std::string fourthUUID(gObjectList.getObject(3)->getID().asString()); - LLSD fourthData; - fourthData["name"] = "Paulo tritani bonorum"; - fourthData["description"] = "Vis verear impetus"; - fourthData["landimpact"] = S32(56); - fourthData["fixed"] = bool(false); - fourthData["walkable"] = bool(true); - fourthData["phantom"] = bool(true); - fourthData["A"] = F32(1.0f); - fourthData["B"] = F32(1.0f); - fourthData["C"] = F32(0.0f); - fourthData["D"] = F32(0.0f); - LLVector3 fourthLocation(215.0f, 57.0f, 5.0f); - fourthData["position"] = fourthLocation.getValue(); - - const std::string fifthUUID(gObjectList.getObject(4)->getID().asString()); - LLSD fifthData; - fifthData["name"] = "Curabitur malesuada"; - fifthData["description"] = "Reque possit philosophia"; - fifthData["landimpact"] = S32(20); - fifthData["fixed"] = bool(true); - fifthData["walkable"] = bool(false); - fifthData["phantom"] = bool(false); - fifthData["A"] = F32(0.375f); - fifthData["B"] = F32(0.078f); - fifthData["C"] = F32(0.986f); - fifthData["D"] = F32(0.0f); - LLVector3 fifthLocation(135.0f, 57.0f, 2.0f); - fifthData["position"] = fifthLocation.getValue(); - - const std::string sixthUUID(gObjectList.getObject(5)->getID().asString()); - LLSD sixthData; - sixthData["name"] = "At tota"; - sixthData["description"] = "Usu no aliquid dignissim"; - sixthData["landimpact"] = S32(257); - sixthData["fixed"] = bool(true); - sixthData["walkable"] = bool(false); - sixthData["phantom"] = bool(true); - sixthData["A"] = F32(0.0f); - sixthData["B"] = F32(0.0f); - sixthData["C"] = F32(1.0f); - sixthData["D"] = F32(0.001f); - LLVector3 sixthLocation(315.0f, 57.0f, 12.0f); - sixthData["position"] = sixthLocation.getValue(); - - const std::string seventhUUID(gObjectList.getObject(6)->getID().asString()); - LLSD seventhData; - seventhData["name"] = "No soleat"; - seventhData["description"] = "honestatis"; - seventhData["landimpact"] = S32(25); - seventhData["fixed"] = bool(true); - seventhData["walkable"] = bool(true); - seventhData["phantom"] = bool(false); - seventhData["A"] = F32(0.554f); - seventhData["B"] = F32(0.2712f); - seventhData["C"] = F32(0.325f); - seventhData["D"] = F32(0.155f); - LLVector3 seventhLocation(7.0f, 0.0f, 0.0f); - seventhData["position"] = seventhLocation.getValue(); - - const std::string eigthUUID(gObjectList.getObject(7)->getID().asString()); - LLSD eigthData; - eigthData["name"] = "Sea te aliquam"; - eigthData["description"] = ""; - eigthData["landimpact"] = S32(17); - eigthData["fixed"] = bool(true); - eigthData["walkable"] = bool(true); - eigthData["phantom"] = bool(true); - eigthData["A"] = F32(0.1f); - eigthData["B"] = F32(0.1f); - eigthData["C"] = F32(0.5f); - eigthData["D"] = F32(0.6f); - LLVector3 eigthLocation(25.0f, 7.0f, 5.0f); - eigthData["position"] = eigthLocation.getValue(); - - allData[firstUUID] = firstData; - allData[secondUUID] = secondData; - allData[thirdUUID] = thirdData; - allData[fourthUUID] = fourthData; - allData[fifthUUID] = fifthData; - allData[sixthUUID] = sixthData; - allData[seventhUUID] = seventhData; - allData[eigthUUID] = eigthData; - - handleNavmeshDataGetReply(allData); - -#else // XXX_STINSON_USE_FAKE_DATA if (isFetchInProgress()) { if (getFetchState() == kFetchRequestSent) @@ -848,7 +707,6 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() LLHTTPClient::get(navmeshDataURL, new NavmeshDataGetResponder(navmeshDataURL, this)); } } -#endif } void LLFloaterPathfindingLinksets::sendNavmeshDataPutRequest(const LLSD& pPostData) -- cgit v1.2.3 From 3567fa111300e059f4778ec60a3afd5ba40298ad Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 14:45:17 -0800 Subject: PATH-186: Ensuring to not send PUT data with no parameters specified. --- indra/newview/llfloaterpathfindinglinksets.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index c70430e7f7..b444ed6df5 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -1094,8 +1094,12 @@ void LLFloaterPathfindingLinksets::applyEditFields() itemData["D"] = d; } - editData[uuid.asString()] = itemData; + if (!itemData.isUndefined()) + { + editData[uuid.asString()] = itemData; + } } + if (editData.isUndefined()) { llwarns << "No PUT data specified" << llendl; -- cgit v1.2.3 From 47c9b857980d6bc32b03e2757c9d9fb689805b86 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 16:17:40 -0800 Subject: PATH-186: Changing the base type for internal storage of the walkability coefficients to be S32 instead of F32 to avoid precision errors in comparing values when determining which values need to be updated through the PUT service. --- indra/newview/llfloaterpathfindinglinksets.cpp | 64 +++++++++++++------------- 1 file changed, 32 insertions(+), 32 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index b444ed6df5..6067c8345c 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -98,10 +98,10 @@ PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNa mIsFixed(false), mIsWalkable(false), mIsPhantom(false), - mA(0.0f), - mB(0.0f), - mC(0.0f), - mD(0.0f) + mA(0), + mB(0), + mC(0), + mD(0) { llassert(pNavmeshItem.has("name")); llassert(pNavmeshItem.get("name").isString()); @@ -130,19 +130,19 @@ PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNa llassert(pNavmeshItem.has("A")); llassert(pNavmeshItem.get("A").isReal()); - mA = pNavmeshItem.get("A").asReal() * 100.0f; + mA = llround(pNavmeshItem.get("A").asReal() * 100.0f); llassert(pNavmeshItem.has("B")); llassert(pNavmeshItem.get("B").isReal()); - mB = pNavmeshItem.get("B").asReal() * 100.0f; + mB = llround(pNavmeshItem.get("B").asReal() * 100.0f); llassert(pNavmeshItem.has("C")); llassert(pNavmeshItem.get("C").isReal()); - mC = pNavmeshItem.get("C").asReal() * 100.0f; + mC = llround(pNavmeshItem.get("C").asReal() * 100.0f); llassert(pNavmeshItem.has("D")); llassert(pNavmeshItem.get("D").isReal()); - mD = pNavmeshItem.get("D").asReal() * 100.0f; + mD = llround(pNavmeshItem.get("D").asReal() * 100.0f); llassert(pNavmeshItem.has("position")); llassert(pNavmeshItem.get("position").isArray()); @@ -242,42 +242,42 @@ void PathfindingLinkset::setPhantom(BOOL pIsPhantom) mIsPhantom = pIsPhantom; } -F32 PathfindingLinkset::getA() const +S32 PathfindingLinkset::getA() const { return mA; } -void PathfindingLinkset::setA(F32 pA) +void PathfindingLinkset::setA(S32 pA) { mA = pA; } -F32 PathfindingLinkset::getB() const +S32 PathfindingLinkset::getB() const { return mB; } -void PathfindingLinkset::setB(F32 pB) +void PathfindingLinkset::setB(S32 pB) { mB = pB; } -F32 PathfindingLinkset::getC() const +S32 PathfindingLinkset::getC() const { return mC; } -void PathfindingLinkset::setC(F32 pC) +void PathfindingLinkset::setC(S32 pC) { mC = pC; } -F32 PathfindingLinkset::getD() const +S32 PathfindingLinkset::getD() const { return mD; } -void PathfindingLinkset::setD(F32 pD) +void PathfindingLinkset::setD(S32 pD) { mD = pD; } @@ -592,19 +592,19 @@ BOOL LLFloaterPathfindingLinksets::postBuild() mEditA = findChild("edit_a_value"); llassert(mEditA != NULL); - mEditA->setPrevalidate(LLTextValidate::validateFloat); + mEditA->setPrevalidate(LLTextValidate::validatePositiveS32); mEditB = findChild("edit_b_value"); llassert(mEditB != NULL); - mEditB->setPrevalidate(LLTextValidate::validateFloat); + mEditB->setPrevalidate(LLTextValidate::validatePositiveS32); mEditC = findChild("edit_c_value"); llassert(mEditC != NULL); - mEditC->setPrevalidate(LLTextValidate::validateFloat); + mEditC->setPrevalidate(LLTextValidate::validatePositiveS32); mEditD = findChild("edit_d_value"); llassert(mEditD != NULL); - mEditD->setPrevalidate(LLTextValidate::validateFloat); + mEditD->setPrevalidate(LLTextValidate::validatePositiveS32); mApplyEdits = findChild("apply_edit_values"); llassert(mApplyEdits != NULL); @@ -899,19 +899,19 @@ void LLFloaterPathfindingLinksets::updateLinksetsList() columns[6]["font"] = "SANSSERIF"; columns[7]["column"] = "a_percent"; - columns[7]["value"] = llformat("%2.0f", linkset.getA()); + columns[7]["value"] = llformat("%3d", linkset.getA()); columns[7]["font"] = "SANSSERIF"; columns[8]["column"] = "b_percent"; - columns[8]["value"] = llformat("%2.0f", linkset.getB()); + columns[8]["value"] = llformat("%3d", linkset.getB()); columns[8]["font"] = "SANSSERIF"; columns[9]["column"] = "c_percent"; - columns[9]["value"] = llformat("%2.0f", linkset.getC()); + columns[9]["value"] = llformat("%3d", linkset.getC()); columns[9]["font"] = "SANSSERIF"; columns[10]["column"] = "d_percent"; - columns[10]["value"] = llformat("%2.0f", linkset.getD()); + columns[10]["value"] = llformat("%3d", linkset.getD()); columns[10]["font"] = "SANSSERIF"; LLSD element; @@ -1039,18 +1039,18 @@ void LLFloaterPathfindingLinksets::applyEditFields() const std::string &bString = mEditB->getText(); const std::string &cString = mEditC->getText(); const std::string &dString = mEditD->getText(); - F32 aValue = (F32)atof(aString.c_str()); - F32 bValue = (F32)atof(bString.c_str()); - F32 cValue = (F32)atof(cString.c_str()); - F32 dValue = (F32)atof(dString.c_str()); + S32 aValue = static_cast(atoi(aString.c_str())); + S32 bValue = static_cast(atoi(bString.c_str())); + S32 cValue = static_cast(atoi(cString.c_str())); + S32 dValue = static_cast(atoi(dString.c_str())); LLSD isFixed = (bool)isFixedBool; LLSD isWalkable = (bool)isWalkableBool; LLSD isPhantom = (bool)isPhantomBool; - LLSD a = aValue / 100.0f; - LLSD b = bValue / 100.0f; - LLSD c = cValue / 100.0f; - LLSD d = dValue / 100.0f; + LLSD a = static_cast(aValue) / 100.0f; + LLSD b = static_cast(bValue) / 100.0f; + LLSD c = static_cast(cValue) / 100.0f; + LLSD d = static_cast(dValue) / 100.0f; const PathfindingLinksets::PathfindingLinksetMap &linksetsMap = mPathfindingLinksets.getAllLinksets(); -- cgit v1.2.3 From fe18dda3df1c5061ac0b956bfebc261c45467738 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 16:24:15 -0800 Subject: PATH-186: Removing unnecessary this-> reference. --- indra/newview/llfloaterpathfindinglinksets.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 6067c8345c..16711190cd 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -695,7 +695,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() mPathfindingLinksets.clearLinksets(); updateLinksetsList(); - std::string navmeshDataURL = this->getCapabilityURL(); + std::string navmeshDataURL = getCapabilityURL(); if (navmeshDataURL.empty()) { setFetchState(kFetchComplete); @@ -711,7 +711,7 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() void LLFloaterPathfindingLinksets::sendNavmeshDataPutRequest(const LLSD& pPostData) { - std::string navmeshDataURL = this->getCapabilityURL(); + std::string navmeshDataURL = getCapabilityURL(); if (navmeshDataURL.empty()) { llwarns << "cannot put navmesh data for current region '" << getRegionName() << "'" << llendl; -- cgit v1.2.3 From f88a8f6f46d9b4e9e628a910e941787d327adf5d Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 16:55:15 -0800 Subject: PATH-226: Implementing a check for the multiple names of the ObjectNavMeshProperties service until the new service name is fully deployed. --- indra/newview/llfloaterpathfindinglinksets.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 16711190cd..60c5365ade 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -769,15 +769,31 @@ std::string LLFloaterPathfindingLinksets::getRegionName() const std::string LLFloaterPathfindingLinksets::getCapabilityURL() const { +#ifdef XXX_STINSON_REGION_CAP_RENAME std::string navmeshDataURL(""); LLViewerRegion* region = gAgent.getRegion(); if (region != NULL) { - navmeshDataURL = region->getCapability("ObjectNavmesh"); + navmeshDataURL = region->getCapability("ObjectNavMeshProperties"); + if (navmeshDataURL.empty()) + { + navmeshDataURL = region->getCapability("ObjectNavmesh"); + } + } + + return navmeshDataURL; +#else // XXX_STINSON_REGION_CAP_RENAME + std::string navmeshDataURL(""); + + LLViewerRegion* region = gAgent.getRegion(); + if (region != NULL) + { + navmeshDataURL = region->getCapability("ObjectNavMeshProperties"); } return navmeshDataURL; +#endif // XXX_STINSON_REGION_CAP_RENAME } void LLFloaterPathfindingLinksets::setFetchState(EFetchState pFetchState) -- cgit v1.2.3 From 496fa2ea87fbfa835be18f6998475175a417ea52 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 18 Jan 2012 17:23:15 -0800 Subject: Changing the camel case of Navmesh to be NavMesh. --- indra/newview/llfloaterpathfindinglinksets.cpp | 194 ++++++++++++------------- 1 file changed, 97 insertions(+), 97 deletions(-) (limited to 'indra/newview/llfloaterpathfindinglinksets.cpp') diff --git a/indra/newview/llfloaterpathfindinglinksets.cpp b/indra/newview/llfloaterpathfindinglinksets.cpp index 60c5365ade..e24703aca6 100644 --- a/indra/newview/llfloaterpathfindinglinksets.cpp +++ b/indra/newview/llfloaterpathfindinglinksets.cpp @@ -46,42 +46,42 @@ #include "lluuid.h" //--------------------------------------------------------------------------- -// NavmeshDataGetResponder +// NavMeshDataGetResponder //--------------------------------------------------------------------------- -class NavmeshDataGetResponder : public LLHTTPClient::Responder +class NavMeshDataGetResponder : public LLHTTPClient::Responder { public: - NavmeshDataGetResponder(const std::string& pNavmeshDataGetURL, LLFloaterPathfindingLinksets *pLinksetsFloater); - virtual ~NavmeshDataGetResponder(); + NavMeshDataGetResponder(const std::string& pNavMeshDataGetURL, LLFloaterPathfindingLinksets *pLinksetsFloater); + virtual ~NavMeshDataGetResponder(); virtual void result(const LLSD& pContent); virtual void error(U32 pStatus, const std::string& pReason); private: - NavmeshDataGetResponder(const NavmeshDataGetResponder& pOther); + NavMeshDataGetResponder(const NavMeshDataGetResponder& pOther); - std::string mNavmeshDataGetURL; + std::string mNavMeshDataGetURL; LLFloaterPathfindingLinksets *mLinksetsFloater; }; //--------------------------------------------------------------------------- -// NavmeshDataPutResponder +// NavMeshDataPutResponder //--------------------------------------------------------------------------- -class NavmeshDataPutResponder : public LLHTTPClient::Responder +class NavMeshDataPutResponder : public LLHTTPClient::Responder { public: - NavmeshDataPutResponder(const std::string& pNavmeshDataPutURL, LLFloaterPathfindingLinksets *pLinksetsFloater); - virtual ~NavmeshDataPutResponder(); + NavMeshDataPutResponder(const std::string& pNavMeshDataPutURL, LLFloaterPathfindingLinksets *pLinksetsFloater); + virtual ~NavMeshDataPutResponder(); virtual void result(const LLSD& pContent); virtual void error(U32 pStatus, const std::string& pReason); private: - NavmeshDataPutResponder(const NavmeshDataPutResponder& pOther); + NavMeshDataPutResponder(const NavMeshDataPutResponder& pOther); - std::string mNavmeshDataPutURL; + std::string mNavMeshDataPutURL; LLFloaterPathfindingLinksets *mLinksetsFloater; }; @@ -89,7 +89,7 @@ private: // PathfindingLinkset //--------------------------------------------------------------------------- -PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNavmeshItem) +PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNavMeshItem) : mUUID(pUUID), mName(), mDescription(), @@ -103,50 +103,50 @@ PathfindingLinkset::PathfindingLinkset(const std::string &pUUID, const LLSD& pNa mC(0), mD(0) { - llassert(pNavmeshItem.has("name")); - llassert(pNavmeshItem.get("name").isString()); - mName = pNavmeshItem.get("name").asString(); + llassert(pNavMeshItem.has("name")); + llassert(pNavMeshItem.get("name").isString()); + mName = pNavMeshItem.get("name").asString(); - llassert(pNavmeshItem.has("description")); - llassert(pNavmeshItem.get("description").isString()); - mDescription = pNavmeshItem.get("description").asString(); + llassert(pNavMeshItem.has("description")); + llassert(pNavMeshItem.get("description").isString()); + mDescription = pNavMeshItem.get("description").asString(); - llassert(pNavmeshItem.has("landimpact")); - llassert(pNavmeshItem.get("landimpact").isInteger()); - llassert(pNavmeshItem.get("landimpact").asInteger() >= 0); - mLandImpact = pNavmeshItem.get("landimpact").asInteger(); + llassert(pNavMeshItem.has("landimpact")); + llassert(pNavMeshItem.get("landimpact").isInteger()); + llassert(pNavMeshItem.get("landimpact").asInteger() >= 0); + mLandImpact = pNavMeshItem.get("landimpact").asInteger(); - llassert(pNavmeshItem.has("permanent")); - llassert(pNavmeshItem.get("permanent").isBoolean()); - mIsFixed = pNavmeshItem.get("permanent").asBoolean(); + llassert(pNavMeshItem.has("permanent")); + llassert(pNavMeshItem.get("permanent").isBoolean()); + mIsFixed = pNavMeshItem.get("permanent").asBoolean(); - llassert(pNavmeshItem.has("walkable")); - llassert(pNavmeshItem.get("walkable").isBoolean()); - mIsWalkable = pNavmeshItem.get("walkable").asBoolean(); + llassert(pNavMeshItem.has("walkable")); + llassert(pNavMeshItem.get("walkable").isBoolean()); + mIsWalkable = pNavMeshItem.get("walkable").asBoolean(); - llassert(pNavmeshItem.has("phantom")); - //llassert(pNavmeshItem.get("phantom").isBoolean()); XXX stinson 01/10/2012: this should be a boolean but is not - mIsPhantom = pNavmeshItem.get("phantom").asBoolean(); + llassert(pNavMeshItem.has("phantom")); + //llassert(pNavMeshItem.get("phantom").isBoolean()); XXX stinson 01/10/2012: this should be a boolean but is not + mIsPhantom = pNavMeshItem.get("phantom").asBoolean(); - llassert(pNavmeshItem.has("A")); - llassert(pNavmeshItem.get("A").isReal()); - mA = llround(pNavmeshItem.get("A").asReal() * 100.0f); + llassert(pNavMeshItem.has("A")); + llassert(pNavMeshItem.get("A").isReal()); + mA = llround(pNavMeshItem.get("A").asReal() * 100.0f); - llassert(pNavmeshItem.has("B")); - llassert(pNavmeshItem.get("B").isReal()); - mB = llround(pNavmeshItem.get("B").asReal() * 100.0f); + llassert(pNavMeshItem.has("B")); + llassert(pNavMeshItem.get("B").isReal()); + mB = llround(pNavMeshItem.get("B").asReal() * 100.0f); - llassert(pNavmeshItem.has("C")); - llassert(pNavmeshItem.get("C").isReal()); - mC = llround(pNavmeshItem.get("C").asReal() * 100.0f); + llassert(pNavMeshItem.has("C")); + llassert(pNavMeshItem.get("C").isReal()); + mC = llround(pNavMeshItem.get("C").asReal() * 100.0f); - llassert(pNavmeshItem.has("D")); - llassert(pNavmeshItem.get("D").isReal()); - mD = llround(pNavmeshItem.get("D").asReal() * 100.0f); + llassert(pNavMeshItem.has("D")); + llassert(pNavMeshItem.get("D").isReal()); + mD = llround(pNavMeshItem.get("D").asReal() * 100.0f); - llassert(pNavmeshItem.has("position")); - llassert(pNavmeshItem.get("position").isArray()); - mLocation.setValue(pNavmeshItem.get("position")); + llassert(pNavMeshItem.has("position")); + llassert(pNavMeshItem.get("position").isArray()); + mLocation.setValue(pNavMeshItem.get("position")); } PathfindingLinkset::PathfindingLinkset(const PathfindingLinkset& pOther) @@ -374,7 +374,7 @@ PathfindingLinksets::PathfindingLinksets() { } -PathfindingLinksets::PathfindingLinksets(const LLSD& pNavmeshData) +PathfindingLinksets::PathfindingLinksets(const LLSD& pNavMeshData) : mAllLinksets(), mFilteredLinksets(), mIsFiltersDirty(false), @@ -383,7 +383,7 @@ PathfindingLinksets::PathfindingLinksets(const LLSD& pNavmeshData) mIsFixedFilter(false), mIsWalkableFilter(false) { - parseNavmeshData(pNavmeshData); + parseNavMeshData(pNavMeshData); } PathfindingLinksets::PathfindingLinksets(const PathfindingLinksets& pOther) @@ -402,12 +402,12 @@ PathfindingLinksets::~PathfindingLinksets() clearLinksets(); } -void PathfindingLinksets::parseNavmeshData(const LLSD& pNavmeshData) +void PathfindingLinksets::parseNavMeshData(const LLSD& pNavMeshData) { clearLinksets(); - for (LLSD::map_const_iterator linksetIter = pNavmeshData.beginMap(); - linksetIter != pNavmeshData.endMap(); ++linksetIter) + for (LLSD::map_const_iterator linksetIter = pNavMeshData.beginMap(); + linksetIter != pNavMeshData.endMap(); ++linksetIter) { const std::string& uuid(linksetIter->first); const LLSD& linksetData = linksetIter->second; @@ -618,7 +618,7 @@ BOOL LLFloaterPathfindingLinksets::postBuild() void LLFloaterPathfindingLinksets::onOpen(const LLSD& pKey) { - sendNavmeshDataGetRequest(); + sendNavMeshDataGetRequest(); } void LLFloaterPathfindingLinksets::openLinksetsEditor() @@ -680,7 +680,7 @@ LLFloaterPathfindingLinksets::~LLFloaterPathfindingLinksets() { } -void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() +void LLFloaterPathfindingLinksets::sendNavMeshDataGetRequest() { if (isFetchInProgress()) { @@ -695,63 +695,63 @@ void LLFloaterPathfindingLinksets::sendNavmeshDataGetRequest() mPathfindingLinksets.clearLinksets(); updateLinksetsList(); - std::string navmeshDataURL = getCapabilityURL(); - if (navmeshDataURL.empty()) + std::string navMeshDataURL = getCapabilityURL(); + if (navMeshDataURL.empty()) { setFetchState(kFetchComplete); - llwarns << "cannot query navmesh data from current region '" << getRegionName() << "'" << llendl; + llwarns << "cannot query object navmesh properties from current region '" << getRegionName() << "'" << llendl; } else { setFetchState(kFetchRequestSent); - LLHTTPClient::get(navmeshDataURL, new NavmeshDataGetResponder(navmeshDataURL, this)); + LLHTTPClient::get(navMeshDataURL, new NavMeshDataGetResponder(navMeshDataURL, this)); } } } -void LLFloaterPathfindingLinksets::sendNavmeshDataPutRequest(const LLSD& pPostData) +void LLFloaterPathfindingLinksets::sendNavMeshDataPutRequest(const LLSD& pPostData) { - std::string navmeshDataURL = getCapabilityURL(); - if (navmeshDataURL.empty()) + std::string navMeshDataURL = getCapabilityURL(); + if (navMeshDataURL.empty()) { - llwarns << "cannot put navmesh data for current region '" << getRegionName() << "'" << llendl; + llwarns << "cannot put object navmesh properties for current region '" << getRegionName() << "'" << llendl; } else { - LLHTTPClient::put(navmeshDataURL, pPostData, new NavmeshDataPutResponder(navmeshDataURL, this)); + LLHTTPClient::put(navMeshDataURL, pPostData, new NavMeshDataPutResponder(navMeshDataURL, this)); } } -void LLFloaterPathfindingLinksets::handleNavmeshDataGetReply(const LLSD& pNavmeshData) +void LLFloaterPathfindingLinksets::handleNavMeshDataGetReply(const LLSD& pNavMeshData) { setFetchState(kFetchReceived); - mPathfindingLinksets.parseNavmeshData(pNavmeshData); + mPathfindingLinksets.parseNavMeshData(pNavMeshData); updateLinksetsList(); setFetchState(kFetchComplete); } -void LLFloaterPathfindingLinksets::handleNavmeshDataGetError(const std::string& pURL, const std::string& pErrorReason) +void LLFloaterPathfindingLinksets::handleNavMeshDataGetError(const std::string& pURL, const std::string& pErrorReason) { setFetchState(kFetchError); mPathfindingLinksets.clearLinksets(); updateLinksetsList(); - llwarns << "Error fetching navmesh data from URL '" << pURL << "' because " << pErrorReason << llendl; + llwarns << "Error fetching object navmesh properties from URL '" << pURL << "' because " << pErrorReason << llendl; } -void LLFloaterPathfindingLinksets::handleNavmeshDataPutReply(const LLSD& pModifiedData) +void LLFloaterPathfindingLinksets::handleNavMeshDataPutReply(const LLSD& pModifiedData) { setFetchState(kFetchReceived); - mPathfindingLinksets.parseNavmeshData(pModifiedData); + mPathfindingLinksets.parseNavMeshData(pModifiedData); updateLinksetsList(); setFetchState(kFetchComplete); } -void LLFloaterPathfindingLinksets::handleNavmeshDataPutError(const std::string& pURL, const std::string& pErrorReason) +void LLFloaterPathfindingLinksets::handleNavMeshDataPutError(const std::string& pURL, const std::string& pErrorReason) { setFetchState(kFetchError); mPathfindingLinksets.clearLinksets(); updateLinksetsList(); - llwarns << "Error putting navmesh data to URL '" << pURL << "' because " << pErrorReason << llendl; + llwarns << "Error putting object navmesh properties to URL '" << pURL << "' because " << pErrorReason << llendl; } std::string LLFloaterPathfindingLinksets::getRegionName() const @@ -770,29 +770,29 @@ std::string LLFloaterPathfindingLinksets::getRegionName() const std::string LLFloaterPathfindingLinksets::getCapabilityURL() const { #ifdef XXX_STINSON_REGION_CAP_RENAME - std::string navmeshDataURL(""); + std::string navMeshDataURL(""); LLViewerRegion* region = gAgent.getRegion(); if (region != NULL) { - navmeshDataURL = region->getCapability("ObjectNavMeshProperties"); - if (navmeshDataURL.empty()) + navMeshDataURL = region->getCapability("ObjectNavMeshProperties"); + if (navMeshDataURL.empty()) { - navmeshDataURL = region->getCapability("ObjectNavmesh"); + navMeshDataURL = region->getCapability("ObjectNavmesh"); } } - return navmeshDataURL; + return navMeshDataURL; #else // XXX_STINSON_REGION_CAP_RENAME - std::string navmeshDataURL(""); + std::string navMeshDataURL(""); LLViewerRegion* region = gAgent.getRegion(); if (region != NULL) { - navmeshDataURL = region->getCapability("ObjectNavMeshProperties"); + navMeshDataURL = region->getCapability("ObjectNavMeshProperties"); } - return navmeshDataURL; + return navMeshDataURL; #endif // XXX_STINSON_REGION_CAP_RENAME } @@ -820,7 +820,7 @@ void LLFloaterPathfindingLinksets::onLinksetsSelectionChange() void LLFloaterPathfindingLinksets::onRefreshLinksetsClicked() { - sendNavmeshDataGetRequest(); + sendNavMeshDataGetRequest(); } void LLFloaterPathfindingLinksets::onSelectAllLinksetsClicked() @@ -1122,7 +1122,7 @@ void LLFloaterPathfindingLinksets::applyEditFields() } else { - sendNavmeshDataPutRequest(editData); + sendNavMeshDataPutRequest(editData); } } } @@ -1145,51 +1145,51 @@ void LLFloaterPathfindingLinksets::setEnableEditFields(BOOL pEnabled) } //--------------------------------------------------------------------------- -// NavmeshDataGetResponder +// NavMeshDataGetResponder //--------------------------------------------------------------------------- -NavmeshDataGetResponder::NavmeshDataGetResponder(const std::string& pNavmeshDataGetURL, LLFloaterPathfindingLinksets *pLinksetsFloater) - : mNavmeshDataGetURL(pNavmeshDataGetURL), +NavMeshDataGetResponder::NavMeshDataGetResponder(const std::string& pNavMeshDataGetURL, LLFloaterPathfindingLinksets *pLinksetsFloater) + : mNavMeshDataGetURL(pNavMeshDataGetURL), mLinksetsFloater(pLinksetsFloater) { } -NavmeshDataGetResponder::~NavmeshDataGetResponder() +NavMeshDataGetResponder::~NavMeshDataGetResponder() { mLinksetsFloater = NULL; } -void NavmeshDataGetResponder::result(const LLSD& pContent) +void NavMeshDataGetResponder::result(const LLSD& pContent) { - mLinksetsFloater->handleNavmeshDataGetReply(pContent); + mLinksetsFloater->handleNavMeshDataGetReply(pContent); } -void NavmeshDataGetResponder::error(U32 status, const std::string& reason) +void NavMeshDataGetResponder::error(U32 status, const std::string& reason) { - mLinksetsFloater->handleNavmeshDataGetError(mNavmeshDataGetURL, reason); + mLinksetsFloater->handleNavMeshDataGetError(mNavMeshDataGetURL, reason); } //--------------------------------------------------------------------------- -// NavmeshDataPutResponder +// NavMeshDataPutResponder //--------------------------------------------------------------------------- -NavmeshDataPutResponder::NavmeshDataPutResponder(const std::string& pNavmeshDataPutURL, LLFloaterPathfindingLinksets *pLinksetsFloater) - : mNavmeshDataPutURL(pNavmeshDataPutURL), +NavMeshDataPutResponder::NavMeshDataPutResponder(const std::string& pNavMeshDataPutURL, LLFloaterPathfindingLinksets *pLinksetsFloater) + : mNavMeshDataPutURL(pNavMeshDataPutURL), mLinksetsFloater(pLinksetsFloater) { } -NavmeshDataPutResponder::~NavmeshDataPutResponder() +NavMeshDataPutResponder::~NavMeshDataPutResponder() { mLinksetsFloater = NULL; } -void NavmeshDataPutResponder::result(const LLSD& pContent) +void NavMeshDataPutResponder::result(const LLSD& pContent) { - mLinksetsFloater->handleNavmeshDataPutReply(pContent); + mLinksetsFloater->handleNavMeshDataPutReply(pContent); } -void NavmeshDataPutResponder::error(U32 status, const std::string& reason) +void NavMeshDataPutResponder::error(U32 status, const std::string& reason) { - mLinksetsFloater->handleNavmeshDataPutError(mNavmeshDataPutURL, reason); + mLinksetsFloater->handleNavMeshDataPutError(mNavMeshDataPutURL, reason); } -- cgit v1.2.3