summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterdebugmaterials.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterdebugmaterials.h')
-rw-r--r--indra/newview/llfloaterdebugmaterials.h43
1 files changed, 30 insertions, 13 deletions
diff --git a/indra/newview/llfloaterdebugmaterials.h b/indra/newview/llfloaterdebugmaterials.h
index 49ddfa7f33..7fc077dd34 100644
--- a/indra/newview/llfloaterdebugmaterials.h
+++ b/indra/newview/llfloaterdebugmaterials.h
@@ -29,6 +29,7 @@
#include <string>
+#include <boost/shared_ptr.hpp>
#include <boost/signals2.hpp>
#include "llfloater.h"
@@ -47,6 +48,9 @@ class LLSpinCtrl;
class LLTextBase;
class LLTextureCtrl;
class LLUICtrl;
+class MultiMaterialsResponder;
+
+typedef boost::shared_ptr<MultiMaterialsResponder> MultiMaterialsResponderPtr;
class LLFloaterDebugMaterials : public LLFloater
{
@@ -56,6 +60,8 @@ public:
virtual void onOpen(const LLSD& pKey);
virtual void onClose(bool pIsAppQuitting);
+ virtual void draw();
+
protected:
private:
@@ -80,15 +86,15 @@ private:
void onPutClearClicked();
void onResetPutValuesClicked();
void onQueryVisibleObjectsClicked();
- void onGoodPostClicked();
- void onBadPostClicked();
+ void onPostClicked();
void onRegionCross();
void onInWorldSelectionChange();
void onGetScrollListSelectionChange(LLUICtrl* pUICtrl);
+ void onPostScrollListSelectionChange(LLUICtrl* pUICtrl);
+ void onViewableObjectsScrollListSelectionChange();
void onDeferredCheckRegionMaterialStatus(LLUUID regionId);
void onDeferredRequestGetMaterials(LLUUID regionId);
void onDeferredRequestPutMaterials(LLUUID regionId, bool pIsDoSet);
- void onDeferredRequestPostMaterials(LLUUID regionId, bool pUseGoodData);
void onGetResponse(bool pRequestStatus, const LLSD& pContent);
void onPutResponse(bool pRequestStatus, const LLSD& pContent);
void onPostResponse(bool pRequestStatus, const LLSD& pContent);
@@ -102,15 +108,12 @@ private:
void requestPutMaterials(bool pIsDoSet);
void requestPutMaterials(const LLUUID& regionId, bool pIsDoSet);
- void requestPostMaterials(bool pUseGoodData);
- void requestPostMaterials(const LLUUID& regionId, bool pUseGoodData);
+ void requestPostMaterials();
- void queryViewableObjects();
-
- void parseGetResponse(const LLSD& pContent);
+ void parseGetResponse();
void parsePutResponse(const LLSD& pContent);
- void parsePostResponse(const LLSD& pContent);
- void printResponse(const std::string& pRequestType, const LLSD& pContent) const;
+ void parseQueryViewableObjects();
+ void parsePostResponse(const LLSD& pMultiContent);
void setState(EState pState);
inline EState getState() const;
@@ -121,6 +124,14 @@ private:
void clearPostResults();
void clearViewableObjectsResults();
+ void setUnparsedGetData(const LLSD& pGetData);
+ void clearUnparsedGetData();
+ void updateGetParsingStatus();
+
+ void setUnparsedQueryData();
+ void clearUnparsedQueryData();
+ void updateQueryParsingStatus();
+
void updateStatusMessage();
void updateControls();
std::string convertToPrintableMaterialID(const LLSD& pBinaryHash) const;
@@ -130,6 +141,7 @@ private:
LLTextBase* mStatusText;
LLButton* mGetButton;
+ LLTextBase* mParsingStatusText;
LLScrollListCtrl* mGetNormalMapScrollList;
LLScrollListCtrl* mGetSpecularMapScrollList;
LLScrollListCtrl* mGetOtherDataScrollList;
@@ -155,9 +167,9 @@ private:
LLButton* mPutClearButton;
LLScrollListCtrl* mPutScrollList;
LLButton* mQueryViewableObjectsButton;
+ LLTextBase* mQueryStatusText;
LLScrollListCtrl* mViewableObjectsScrollList;
- LLButton* mGoodPostButton;
- LLButton* mBadPostButton;
+ LLButton* mPostButton;
LLScrollListCtrl* mPostNormalMapScrollList;
LLScrollListCtrl* mPostSpecularMapScrollList;
LLScrollListCtrl* mPostOtherDataScrollList;
@@ -171,8 +183,13 @@ private:
boost::signals2::connection mRegionCrossConnection;
boost::signals2::connection mTeleportFailedConnection;
boost::signals2::connection mSelectionUpdateConnection;
-};
+ LLSD mUnparsedGetData;
+ S32 mNextUnparsedGetDataIndex;
+
+ S32 mNextUnparsedQueryDataIndex;
+ MultiMaterialsResponderPtr mMultiMaterialsResponder;
+};
LLFloaterDebugMaterials::EState LLFloaterDebugMaterials::getState() const