SL-11986 Mesh Uploader does not report Upload cost on fee-failure
parent
1b19a88e84
commit
48e282947f
|
|
@ -433,7 +433,7 @@ void LLFloaterModelPreview::initModelPreview()
|
|||
mModelPreview = new LLModelPreview(512, 512, this );
|
||||
mModelPreview->setPreviewTarget(16.f);
|
||||
mModelPreview->setDetailsCallback(boost::bind(&LLFloaterModelPreview::setDetails, this, _1, _2, _3, _4, _5));
|
||||
mModelPreview->setModelUpdatedCallback(boost::bind(&LLFloaterModelPreview::toggleCalculateButton, this, _1));
|
||||
mModelPreview->setModelUpdatedCallback(boost::bind(&LLFloaterModelPreview::modelUpdated, this, _1));
|
||||
}
|
||||
|
||||
void LLFloaterModelPreview::onViewOptionChecked(LLUICtrl* ctrl)
|
||||
|
|
@ -510,7 +510,8 @@ void LLFloaterModelPreview::onClickCalculateBtn()
|
|||
mModelPreview->getPreviewAvatar()->showAttachmentOverrides();
|
||||
}
|
||||
|
||||
mUploadModelUrl.clear();
|
||||
mUploadModelUrl.clear();
|
||||
mModelPhysicsFee.clear();
|
||||
|
||||
gMeshRepo.uploadModel(mModelPreview->mUploadData, mModelPreview->mPreviewScale,
|
||||
childGetValue("upload_textures").asBoolean(),
|
||||
|
|
@ -4439,6 +4440,12 @@ void LLFloaterModelPreview::toggleCalculateButton()
|
|||
toggleCalculateButton(true);
|
||||
}
|
||||
|
||||
void LLFloaterModelPreview::modelUpdated(bool calculate_visible)
|
||||
{
|
||||
mModelPhysicsFee.clear();
|
||||
toggleCalculateButton(calculate_visible);
|
||||
}
|
||||
|
||||
void LLFloaterModelPreview::toggleCalculateButton(bool visible)
|
||||
{
|
||||
mCalculateBtn->setVisible(visible);
|
||||
|
|
@ -4464,7 +4471,10 @@ void LLFloaterModelPreview::toggleCalculateButton(bool visible)
|
|||
childSetTextArg("download_weight", "[ST]", tbd);
|
||||
childSetTextArg("server_weight", "[SIM]", tbd);
|
||||
childSetTextArg("physics_weight", "[PH]", tbd);
|
||||
childSetTextArg("upload_fee", "[FEE]", tbd);
|
||||
if (!mModelPhysicsFee.isMap() || mModelPhysicsFee.emptyMap())
|
||||
{
|
||||
childSetTextArg("upload_fee", "[FEE]", tbd);
|
||||
}
|
||||
childSetTextArg("price_breakdown", "[STREAMING]", tbd);
|
||||
childSetTextArg("price_breakdown", "[PHYSICS]", tbd);
|
||||
childSetTextArg("price_breakdown", "[INSTANCES]", tbd);
|
||||
|
|
@ -4524,10 +4534,21 @@ void LLFloaterModelPreview::handleModelPhysicsFeeReceived()
|
|||
mUploadBtn->setEnabled(isModelUploadAllowed());
|
||||
}
|
||||
|
||||
void LLFloaterModelPreview::setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason)
|
||||
void LLFloaterModelPreview::setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason, const LLSD& result)
|
||||
{
|
||||
LL_WARNS() << "LLFloaterModelPreview::setModelPhysicsFeeErrorStatus(" << status << " : " << reason << ")" << LL_ENDL;
|
||||
doOnIdleOneTime(boost::bind(&LLFloaterModelPreview::toggleCalculateButton, this, true));
|
||||
|
||||
if (result.has("upload_price"))
|
||||
{
|
||||
mModelPhysicsFee = result;
|
||||
childSetTextArg("upload_fee", "[FEE]", llformat("%d", result["upload_price"].asInteger()));
|
||||
childSetVisible("upload_fee", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
mModelPhysicsFee.clear();
|
||||
}
|
||||
}
|
||||
|
||||
/*virtual*/
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ public:
|
|||
|
||||
/*virtual*/ void onModelPhysicsFeeReceived(const LLSD& result, std::string upload_url);
|
||||
void handleModelPhysicsFeeReceived();
|
||||
/*virtual*/ void setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason);
|
||||
/*virtual*/ void setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason, const LLSD& result);
|
||||
|
||||
/*virtual*/ void onModelUploadSuccess();
|
||||
|
||||
|
|
@ -208,6 +208,8 @@ private:
|
|||
|
||||
void onLoDSourceCommit(S32 lod);
|
||||
|
||||
void modelUpdated(bool calculate_visible);
|
||||
|
||||
// Toggles between "Calculate weights & fee" and "Upload" buttons.
|
||||
void toggleCalculateButton(bool visible);
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public:
|
|||
|
||||
virtual void onModelPhysicsFeeReceived(const LLSD& result, std::string upload_url) = 0;
|
||||
|
||||
virtual void setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason) = 0;
|
||||
virtual void setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason, const LLSD& result) = 0;
|
||||
|
||||
virtual void onModelUploadSuccess() {};
|
||||
|
||||
|
|
|
|||
|
|
@ -2772,7 +2772,7 @@ void LLMeshUploadThread::onCompleted(LLCore::HttpHandle handle, LLCore::HttpResp
|
|||
|
||||
if (observer)
|
||||
{
|
||||
observer->setModelPhysicsFeeErrorStatus(status.toULong(), reason);
|
||||
observer->setModelPhysicsFeeErrorStatus(status.toULong(), reason, body["error"]);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
@ -2805,7 +2805,7 @@ void LLMeshUploadThread::onCompleted(LLCore::HttpHandle handle, LLCore::HttpResp
|
|||
|
||||
if (observer)
|
||||
{
|
||||
observer->setModelPhysicsFeeErrorStatus(status.toULong(), reason);
|
||||
observer->setModelPhysicsFeeErrorStatus(status.toULong(), reason, body["error"]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public:
|
|||
virtual ~LLWholeModelFeeObserver() {}
|
||||
|
||||
virtual void onModelPhysicsFeeReceived(const LLSD& result, std::string upload_url) = 0;
|
||||
virtual void setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason) = 0;
|
||||
virtual void setModelPhysicsFeeErrorStatus(S32 status, const std::string& reason, const LLSD& result) = 0;
|
||||
|
||||
LLHandle<LLWholeModelFeeObserver> getWholeModelFeeObserverHandle() const { return mWholeModelFeeObserverHandle; }
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue