summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterobjectweights.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterobjectweights.h')
-rw-r--r--indra/newview/llfloaterobjectweights.h36
1 files changed, 19 insertions, 17 deletions
diff --git a/indra/newview/llfloaterobjectweights.h b/indra/newview/llfloaterobjectweights.h
index 50d028909e..64aa2f2bbe 100644
--- a/indra/newview/llfloaterobjectweights.h
+++ b/indra/newview/llfloaterobjectweights.h
@@ -30,36 +30,45 @@
#include "llfloater.h"
#include "llaccountingcostmanager.h"
+#include "llselectmgr.h"
-class LLLandImpactsObserver;
-class LLObjectSelection;
-class LLParcelSelection;
+class LLParcel;
class LLTextBox;
+/**
+ * struct LLCrossParcelFunctor
+ *
+ * A functor that checks whether a bounding box for all
+ * selected objects crosses a region or parcel bounds.
+ */
+struct LLCrossParcelFunctor : public LLSelectedObjectFunctor
+{
+ /*virtual*/ bool apply(LLViewerObject* obj);
+
+private:
+ LLBBox mBoundingBox;
+};
+
+
class LLFloaterObjectWeights : public LLFloater, LLAccountingCostObserver
{
public:
LOG_CLASS(LLFloaterObjectWeights);
- typedef LLSafeHandle<LLObjectSelection> LLObjectSelectionHandle;
- typedef LLSafeHandle<LLParcelSelection> LLParcelSelectionHandle;
-
LLFloaterObjectWeights(const LLSD& key);
~LLFloaterObjectWeights();
/*virtual*/ BOOL postBuild();
/*virtual*/ void onOpen(const LLSD& key);
- /*virtual*/ void onClose(bool app_quitting);
/*virtual*/ void onWeightsUpdate(const SelectionCost& selection_cost);
/*virtual*/ void setErrorStatus(U32 status, const std::string& reason);
- void updateLandImpacts();
-
-private:
+ void updateLandImpacts(const LLParcel* parcel);
void refresh();
+private:
void toggleWeightsLoadingIndicators(bool visible);
void toggleLandImpactsLoadingIndicators(bool visible);
@@ -77,13 +86,6 @@ private:
LLTextBox *mRezzedOnLand;
LLTextBox *mRemainingCapacity;
LLTextBox *mTotalCapacity;
-
- LLLandImpactsObserver *mLandImpactsObserver;
-
- LLObjectSelectionHandle mObjectSelection;
- LLParcelSelectionHandle mParcelSelection;
-
- boost::signals2::connection mSelectMgrConnection;
};
#endif //LL_LLFLOATEROBJECTWEIGHTS_H