summaryrefslogtreecommitdiff
path: root/indra/newview/llmaniptranslate.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llmaniptranslate.h')
-rw-r--r--indra/newview/llmaniptranslate.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/indra/newview/llmaniptranslate.h b/indra/newview/llmaniptranslate.h
index 8821b64c90..c9f98e9c7d 100644
--- a/indra/newview/llmaniptranslate.h
+++ b/indra/newview/llmaniptranslate.h
@@ -35,7 +35,6 @@
#include "llmanip.h"
#include "lltimer.h"
#include "v4math.h"
-#include "linked_lists.h"
#include "llquaternion.h"
class LLManipTranslate : public LLManip
@@ -88,6 +87,17 @@ protected:
F32 getMinGridScale();
private:
+ struct compare_manipulators
+ {
+ bool operator() (const ManipulatorHandle* const a, const ManipulatorHandle* const b) const
+ {
+ if (a->mEndPosition.mV[VZ] != b->mEndPosition.mV[VZ])
+ return (a->mEndPosition.mV[VZ] < b->mEndPosition.mV[VZ]);
+ else
+ return a->mManipID < b->mManipID;
+ }
+ };
+
S32 mLastHoverMouseX;
S32 mLastHoverMouseY;
BOOL mSendUpdateOnMouseUp;
@@ -105,7 +115,8 @@ private:
LLVector3d mDragCursorStartGlobal;
LLVector3d mDragSelectionStartGlobal;
LLTimer mUpdateTimer;
- LLLinkedList<ManipulatorHandle> mProjectedManipulators;
+ typedef std::set<ManipulatorHandle*, compare_manipulators> minpulator_list_t;
+ minpulator_list_t mProjectedManipulators;
LLVector4 mManipulatorVertices[18];
F32 mSnapOffsetMeters;
LLVector3 mSnapOffsetAxis;