Skip to content
Snippets Groups Projects
Commit 86787b58 authored by Monroe Linden's avatar Monroe Linden
Browse files

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.
parent 217b1b1b
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment