diff options
Diffstat (limited to 'indra/newview/lltoolbrush.cpp')
-rw-r--r-- | indra/newview/lltoolbrush.cpp | 60 |
1 files changed, 30 insertions, 30 deletions
diff --git a/indra/newview/lltoolbrush.cpp b/indra/newview/lltoolbrush.cpp index 5a637a6346..d39ce57e56 100644 --- a/indra/newview/lltoolbrush.cpp +++ b/indra/newview/lltoolbrush.cpp @@ -108,10 +108,10 @@ void LLToolBrushLand::modifyLandAtPointGlobal(const LLVector3d &pos_global, S32 radioAction = gSavedSettings.getS32("RadioLandBrushAction"); determineAffectedRegions(mLastAffectedRegions, pos_global); - for(LLViewerRegion* regionp = mLastAffectedRegions.getFirstData(); - regionp != NULL; - regionp = mLastAffectedRegions.getNextData()) + for(region_list_t::iterator iter = mLastAffectedRegions.begin(); + iter != mLastAffectedRegions.end(); ++iter) { + LLViewerRegion* regionp = *iter; //BOOL is_changed = FALSE; LLVector3 pos_region = regionp->getPosRegionFromGlobal(pos_global); LLSurface &land = regionp->getLand(); @@ -200,7 +200,7 @@ void LLToolBrushLand::modifyLandInSelectionGlobal() S32 radioAction = gSavedSettings.getS32("RadioLandBrushAction"); - mLastAffectedRegions.removeAllNodes(); + mLastAffectedRegions.clear(); determineAffectedRegions(mLastAffectedRegions, LLVector3d(min.mdV[VX], min.mdV[VY], 0)); determineAffectedRegions(mLastAffectedRegions, LLVector3d(min.mdV[VX], max.mdV[VY], 0)); @@ -223,10 +223,10 @@ void LLToolBrushLand::modifyLandInSelectionGlobal() } // Stop if our selection include a no-terraform region - for(LLViewerRegion* regionp = mLastAffectedRegions.getFirstData(); - regionp != NULL; - regionp = mLastAffectedRegions.getNextData()) + for(region_list_t::iterator iter = mLastAffectedRegions.begin(); + iter != mLastAffectedRegions.end(); ++iter) { + LLViewerRegion* regionp = *iter; if (!canTerraform(regionp)) { alertNoTerraform(regionp); @@ -234,10 +234,10 @@ void LLToolBrushLand::modifyLandInSelectionGlobal() } } - for(LLViewerRegion* regionp = mLastAffectedRegions.getFirstData(); - regionp != NULL; - regionp = mLastAffectedRegions.getNextData()) + for(region_list_t::iterator iter = mLastAffectedRegions.begin(); + iter != mLastAffectedRegions.end(); ++iter) { + LLViewerRegion* regionp = *iter; //BOOL is_changed = FALSE; LLVector3 min_region = regionp->getPosRegionFromGlobal(min); LLVector3 max_region = regionp->getPosRegionFromGlobal(max); @@ -398,7 +398,7 @@ BOOL LLToolBrushLand::handleHover( S32 x, S32 y, MASK mask ) BOOL LLToolBrushLand::handleMouseUp(S32 x, S32 y, MASK mask) { BOOL handled = FALSE; - mLastAffectedRegions.removeAllNodes(); + mLastAffectedRegions.clear(); if( hasMouseCapture() ) { // Release the mouse @@ -452,15 +452,15 @@ void LLToolBrushLand::render() spot.mdV[VY] = floor( spot.mdV[VY] + 0.5 ); mBrushIndex = gSavedSettings.getS32("RadioLandBrushSize"); - LLLinkedList<LLViewerRegion> regions; + region_list_t regions; determineAffectedRegions(regions, spot); // Now, for each region, render the overlay LLVector3 pos_world = gAgent.getRegion()->getPosRegionFromGlobal(spot); - for(LLViewerRegion* region = regions.getFirstData(); - region != NULL; - region = regions.getNextData()) + for(region_list_t::iterator iter = regions.begin(); + iter != regions.end(); ++iter) { + LLViewerRegion* region = *iter; renderOverlay(region->getLand(), region->getPosRegionFromGlobal(spot), pos_world); @@ -499,7 +499,7 @@ void LLToolBrushLand::renderOverlay(LLSurface& land, const LLVector3& pos_region glPopMatrix(); } -void LLToolBrushLand::determineAffectedRegions(LLLinkedList<LLViewerRegion>& regions, +void LLToolBrushLand::determineAffectedRegions(region_list_t& regions, const LLVector3d& spot ) const { LLVector3d corner(spot); @@ -507,27 +507,27 @@ void LLToolBrushLand::determineAffectedRegions(LLLinkedList<LLViewerRegion>& reg corner.mdV[VY] -= (LAND_BRUSH_SIZE[mBrushIndex] / 2); LLViewerRegion* region = NULL; region = gWorldPointer->getRegionFromPosGlobal(corner); - if(region && !regions.checkData(region)) + if(region && regions.find(region) == regions.end()) { - regions.addData(region); + regions.insert(region); } corner.mdV[VY] += LAND_BRUSH_SIZE[mBrushIndex]; region = gWorldPointer->getRegionFromPosGlobal(corner); - if(region && !regions.checkData(region)) + if(region && regions.find(region) == regions.end()) { - regions.addData(region); + regions.insert(region); } corner.mdV[VX] += LAND_BRUSH_SIZE[mBrushIndex]; region = gWorldPointer->getRegionFromPosGlobal(corner); - if(region && !regions.checkData(region)) + if(region && regions.find(region) == regions.end()) { - regions.addData(region); + regions.insert(region); } corner.mdV[VY] -= LAND_BRUSH_SIZE[mBrushIndex]; region = gWorldPointer->getRegionFromPosGlobal(corner); - if(region && !regions.checkData(region)) + if(region && regions.find(region) == regions.end()) { - regions.addData(region); + regions.insert(region); } } @@ -554,10 +554,10 @@ void LLToolBrushLand::onMouseCaptureLost() // static void LLToolBrushLand::undo() { - for(LLViewerRegion* regionp = mLastAffectedRegions.getFirstData(); - regionp != NULL; - regionp = mLastAffectedRegions.getNextData()) + for(region_list_t::iterator iter = mLastAffectedRegions.begin(); + iter != mLastAffectedRegions.end(); ++iter) { + LLViewerRegion* regionp = *iter; gMessageSystem->newMessageFast(_PREHASH_UndoLand); gMessageSystem->nextBlockFast(_PREHASH_AgentData); gMessageSystem->addUUIDFast(_PREHASH_AgentID, gAgent.getID() ); @@ -570,10 +570,10 @@ void LLToolBrushLand::undo() /* void LLToolBrushLand::redo() { - for(LLViewerRegion* regionp = mLastAffectedRegions.getFirstData(); - regionp != NULL; - regionp = mLastAffectedRegions.getNextData()) + for(region_list_t::iterator iter = mLastAffectedRegions.begin(); + iter != mLastAffectedRegions.end(); ++iter) { + LLViewerRegion* regionp = *iter; gMessageSystem->newMessageFast(_PREHASH_RedoLand); gMessageSystem->nextBlockFast(_PREHASH_AgentData); gMessageSystem->addUUIDFast(_PREHASH_AgentID, gAgent.getID() ); |