diff options
Diffstat (limited to 'indra/newview/llfloatersocial.cpp')
-rw-r--r-- | indra/newview/llfloatersocial.cpp | 66 |
1 files changed, 29 insertions, 37 deletions
diff --git a/indra/newview/llfloatersocial.cpp b/indra/newview/llfloatersocial.cpp index 6d4262a599..b90cc004d3 100644 --- a/indra/newview/llfloatersocial.cpp +++ b/indra/newview/llfloatersocial.cpp @@ -40,6 +40,7 @@ #include "llsdserialize.h" #include "llloadingindicator.h" #include "llslurl.h" +#include "lltrans.h" #include "llsnapshotlivepreview.h" #include "llviewerregion.h" #include "llviewercontrol.h" @@ -155,8 +156,6 @@ LLSocialPhotoPanel::LLSocialPhotoPanel() : mSnapshotPanel(NULL), mResolutionComboBox(NULL), mRefreshBtn(NULL), -mRefreshLabel(NULL), -mWorkingIndicator(NULL), mWorkingLabel(NULL), mThumbnailPlaceholder(NULL), mCaptionTextBox(NULL), @@ -183,8 +182,6 @@ BOOL LLSocialPhotoPanel::postBuild() mResolutionComboBox->setCommitCallback(boost::bind(&LLSocialPhotoPanel::updateResolution, this, TRUE)); mRefreshBtn = getChild<LLUICtrl>("new_snapshot_btn"); childSetAction("new_snapshot_btn", boost::bind(&LLSocialPhotoPanel::onClickNewSnapshot, this)); - mRefreshLabel = getChild<LLUICtrl>("refresh_lbl"); - mWorkingIndicator = getChild<LLLoadingIndicator>("working_indicator"); mWorkingLabel = getChild<LLUICtrl>("working_lbl"); mThumbnailPlaceholder = getChild<LLUICtrl>("thumbnail_placeholder"); mCaptionTextBox = getChild<LLUICtrl>("caption"); @@ -226,23 +223,10 @@ void LLSocialPhotoPanel::draw() previewp->drawPreviewRect(offset_x, offset_y) ; } - // Update the visibility of the working (computing preview) indicators - if (previewp && previewp->getSnapshotUpToDate()) - { - if (mWorkingIndicator->getVisible()) - { - mWorkingIndicator->setVisible(false); - mWorkingIndicator->stop(); - mWorkingLabel->setVisible(false); - } - } - else if (!mWorkingIndicator->getVisible()) - { - mWorkingIndicator->setVisible(true); - mWorkingIndicator->start(); - mWorkingLabel->setVisible(true); - } + // Update the visibility of the working (computing preview) label + mWorkingLabel->setVisible(!(previewp && previewp->getSnapshotUpToDate())); + // Draw the rest of the panel on top of it LLPanel::draw(); } @@ -439,7 +423,7 @@ void LLSocialPhotoPanel::updateResolution(BOOL do_update) { lldebugs << "Will update controls" << llendl; updateControls(); - setNeedRefresh(true); + LLSocialPhotoPanel::onClickNewSnapshot(); } } @@ -467,12 +451,6 @@ void LLSocialPhotoPanel::checkAspectRatio(S32 index) } } -void LLSocialPhotoPanel::setNeedRefresh(bool need) -{ - mRefreshLabel->setVisible(need); - mNeedRefresh = need; -} - LLUICtrl* LLSocialPhotoPanel::getRefreshBtn() { return mRefreshBtn; @@ -644,9 +622,6 @@ void LLFloaterSocial::preUpdate() { //Will set file size text to 'unknown' instance->mSocialPhotoPanel->updateControls(); - - //Hides the refresh text - instance->mSocialPhotoPanel->setNeedRefresh(false); } } @@ -659,9 +634,6 @@ void LLFloaterSocial::postUpdate() //Will set the file size text instance->mSocialPhotoPanel->updateControls(); - //Hides the refresh text - instance->mSocialPhotoPanel->setNeedRefresh(false); - // The refresh button is initially hidden. We show it after the first update, // i.e. after snapshot is taken LLUICtrl * refresh_button = instance->mSocialPhotoPanel->getRefreshBtn(); @@ -682,22 +654,42 @@ void LLFloaterSocial::draw() mStatusLoadingText->setVisible(false); mStatusLoadingIndicator->setVisible(false); LLFacebookConnect::EConnectionState connection_state = LLFacebookConnect::instance().getConnectionState(); + std::string status_text; + switch (connection_state) { case LLFacebookConnect::FB_NOT_CONNECTED: + // No status displayed when first opening the panel and no connection done + case LLFacebookConnect::FB_CONNECTED: + // When successfully connected, no message is displayed + case LLFacebookConnect::FB_POSTED: + // No success message to show since we actually close the floater after successful posting completion break; case LLFacebookConnect::FB_CONNECTION_IN_PROGRESS: - case LLFacebookConnect::FB_POSTING: + // Connection loading indicator mStatusLoadingText->setVisible(true); + status_text = LLTrans::getString("SocialFacebookConnecting"); + mStatusLoadingText->setValue(status_text); mStatusLoadingIndicator->setVisible(true); break; - case LLFacebookConnect::FB_CONNECTED: + case LLFacebookConnect::FB_POSTING: + // Posting indicator + mStatusLoadingText->setVisible(true); + status_text = LLTrans::getString("SocialFacebookPosting"); + mStatusLoadingText->setValue(status_text); + mStatusLoadingIndicator->setVisible(true); break; - case LLFacebookConnect::FB_POSTED: - break; case LLFacebookConnect::FB_CONNECTION_FAILED: + // Error connecting to the service + mStatusErrorText->setVisible(true); + status_text = LLTrans::getString("SocialFacebookErrorConnecting"); + mStatusErrorText->setValue(status_text); + break; case LLFacebookConnect::FB_POST_FAILED: + // Error posting to the service mStatusErrorText->setVisible(true); + status_text = LLTrans::getString("SocialFacebookErrorPosting"); + mStatusErrorText->setValue(status_text); break; } } |