summaryrefslogtreecommitdiff
path: root/indra/newview/llmediactrl.cpp
diff options
context:
space:
mode:
authorMonroe Linden <monroe@lindenlab.com>2009-10-15 18:42:30 -0700
committerMonroe Linden <monroe@lindenlab.com>2009-10-15 18:42:30 -0700
commit86787b58edf59997b68dca6a0927d24b2a24a2b5 (patch)
treeb6ad5b5a309e316f77f50b61cc042b988915eb5c /indra/newview/llmediactrl.cpp
parent217b1b1b6bf401cfb35c7725793bbbaa2264cfa2 (diff)
Major refactor of LLViewerMediaFocus and LLPanelMediaHUD.
LLViewerMediaFocus now tracks two separate objects: the currently focused media object, and the media object that's currently being hovered over. It no longer stores smart pointers to either the LLViewerObject or the LLViewerMediaImpl -- it now looks up both by UUID every time they're needed, and fails gracefully if either goes away. This will prevent it from keeping objects from being deleted. The poorly-understood "mouseOverFlag" has been expunged. LLViewerMediaFocus no longer uses LLSelectMgr at all. The object to focus on is explicitly passed between LLViewerMediaFocus and LLPanelMediaHUD instead of going indirectly through the selection manager. LLViewerMediaFocus also no longer interacts with the pick from LLToolPie -- the data it needs from the pick (the object and normal vector) is passed explicitly. LLViewerMediaFocus::setCameraZoom and LLViewerMediaFocus::getBBoxAspectRatio now have no dependencies on the LLViewerMediaFocus object -- all the data they need is passed in when they're called by the LLPanelMediaHUD. I made them static member functions, but they could be moved to LLPanelMediaHUD or even made into file-scoped static functions. The only reason I didn't do either of those is that it seems like they belong with the LLViewerMediaFocus code as opposed to the HUD.
Diffstat (limited to 'indra/newview/llmediactrl.cpp')
0 files changed, 0 insertions, 0 deletions