bool LLNetMap::mmenableunmark::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; BOOL enabled = mPtr->mClosestAgentAtLastRightClick.notNull() && mm_MarkerColors.find(mPtr->mClosestAgentAtLastRightClick) != mm_MarkerColors.end(); self->findControl(userdata["control"].asString())->setValue(enabled); return true; }
bool LLNetMap::LLCheckRotateMap::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; BOOL enabled = gSavedSettings.getBOOL("MiniMapRotate"); self->findControl(userdata["control"].asString())->setValue(enabled); return true; }
bool LLNetMap::LLCheckCenterMap::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; EMiniMapCenter center = (EMiniMapCenter)userdata["data"].asInteger(); BOOL enabled = (gSavedSettings.getS32("MiniMapCenter") == center); self->findControl(userdata["control"].asString())->setValue(enabled); return true; }
bool LLNetMap::LLEnableProfile::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; //self->findControl(userdata["control"].asString())->setValue(self->isAgentUnderCursor()); // [RLVa:KB] - Alternate: Imprudence-1.2.0 self->findControl(userdata["control"].asString())->setValue(self->isAgentUnderCursor() && !gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES)); // [/RLVa:KB] return true; }
bool LLNetMap::LLEnableProfile::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; // [RLVa:KB] - Version: 1.23.4 | Checked: 2009-07-08 (RLVa-1.0.0e) | Modified: RLVa-0.2.0b self->findControl(userdata["control"].asString())->setValue( (self->isAgentUnderCursor()) && (!gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES)) ); // [/RLVa:KB] //self->findControl(userdata["control"].asString())->setValue(self->isAgentUnderCursor()); return true; }
// static bool LLNetMap::LLScaleMap::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; S32 level = userdata.asInteger(); switch(level) { case 0: self->setScale(MAP_SCALE_MIN); break; case 1: self->setScale(MAP_SCALE_MID); break; case 2: self->setScale(MAP_SCALE_MAX); break; default: break; } return true; }
void LLViewerObjectList::renderObjectsForMap(LLNetMap &netmap) { LLColor4 above_water_color = gColors.getColor( "NetMapOtherOwnAboveWater" ); LLColor4 below_water_color = gColors.getColor( "NetMapOtherOwnBelowWater" ); LLColor4 you_own_above_water_color = gColors.getColor( "NetMapYouOwnAboveWater" ); LLColor4 you_own_below_water_color = gColors.getColor( "NetMapYouOwnBelowWater" ); LLColor4 group_own_above_water_color = gColors.getColor( "NetMapGroupOwnAboveWater" ); LLColor4 group_own_below_water_color = gColors.getColor( "NetMapGroupOwnBelowWater" ); for (S32 i = 0; i < mMapObjects.count(); i++) { LLViewerObject* objectp = mMapObjects[i]; if (!objectp->getRegion() || objectp->isOrphaned() || objectp->isAttachment()) { continue; } const LLVector3& scale = objectp->getScale(); const LLVector3d pos = objectp->getPositionGlobal(); const F64 water_height = F64( objectp->getRegion()->getWaterHeight() ); // gWorldPointer->getWaterHeight(); F32 approx_radius = (scale.mV[VX] + scale.mV[VY]) * 0.5f * 0.5f * 1.3f; // 1.3 is a fudge LLColor4U color = above_water_color; if( objectp->permYouOwner() ) { const F32 MIN_RADIUS_FOR_OWNED_OBJECTS = 2.f; if( approx_radius < MIN_RADIUS_FOR_OWNED_OBJECTS ) { approx_radius = MIN_RADIUS_FOR_OWNED_OBJECTS; } if( pos.mdV[VZ] >= water_height ) { if ( objectp->permGroupOwner() ) { color = group_own_above_water_color; } else { color = you_own_above_water_color; } } else { if ( objectp->permGroupOwner() ) { color = group_own_below_water_color; } else { color = you_own_below_water_color; } } } else if( pos.mdV[VZ] < water_height ) { color = below_water_color; } netmap.renderScaledPointGlobal( pos, color, approx_radius ); } }
bool LLNetMap::LLEnableTracking::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; self->findControl(userdata["control"].asString())->setValue(LLTracker::isTracking(NULL)); return true; }
bool LLNetMap::LLEnableProfile::handleEvent(LLPointer<LLEvent> event, const LLSD& userdata) { LLNetMap *self = mPtr; self->findControl(userdata["control"].asString())->setValue(self->isAgentUnderCursor()); return true; }
void LLViewerObjectList::renderObjectsForMap(LLNetMap &netmap) { LLColor4 above_water_color = gColors.getColor( "NetMapOtherOwnAboveWater" ); LLColor4 below_water_color = gColors.getColor( "NetMapOtherOwnBelowWater" ); LLColor4 you_own_above_water_color = gColors.getColor( "NetMapYouOwnAboveWater" ); LLColor4 you_own_below_water_color = gColors.getColor( "NetMapYouOwnBelowWater" ); LLColor4 group_own_above_water_color = gColors.getColor( "NetMapGroupOwnAboveWater" ); LLColor4 group_own_below_water_color = gColors.getColor( "NetMapGroupOwnBelowWater" ); F32 max_radius = gSavedSettings.getF32("MiniMapPrimMaxRadius"); for (S32 i = 0; i < mMapObjects.count(); i++) { LLViewerObject* objectp = mMapObjects[i]; if (!objectp->getRegion() || objectp->isOrphaned() || objectp->isAttachment()) { continue; } const LLVector3& scale = objectp->getScale(); const LLVector3d pos = objectp->getPositionGlobal(); const F64 water_height = F64( objectp->getRegion()->getWaterHeight() ); // LLWorld::getInstance()->getWaterHeight(); F32 approx_radius = (scale.mV[VX] + scale.mV[VY]) * 0.5f * 0.5f * 1.3f; // 1.3 is a fudge // Limit the size of megaprims so they don't blot out everything on the minimap. // Attempting to draw very large megaprims also causes client lag. // See DEV-17370 and SNOW-79 for details. approx_radius = llmin(approx_radius, max_radius); LLColor4U color = above_water_color; if( objectp->permYouOwner() ) { const F32 MIN_RADIUS_FOR_OWNED_OBJECTS = 2.f; if( approx_radius < MIN_RADIUS_FOR_OWNED_OBJECTS ) { approx_radius = MIN_RADIUS_FOR_OWNED_OBJECTS; } if( pos.mdV[VZ] >= water_height ) { if ( objectp->permGroupOwner() ) { color = group_own_above_water_color; } else { color = you_own_above_water_color; } } else { if ( objectp->permGroupOwner() ) { color = group_own_below_water_color; } else { color = you_own_below_water_color; } } } else if( pos.mdV[VZ] < water_height ) { color = below_water_color; } netmap.renderScaledPointGlobal( pos, color, approx_radius ); } }