summaryrefslogtreecommitdiff
path: root/indra/newview/llfloatersnapshot.cpp
diff options
context:
space:
mode:
authorMerov Linden <merov@lindenlab.com>2014-01-30 18:53:05 -0800
committerMerov Linden <merov@lindenlab.com>2014-01-30 18:53:05 -0800
commite970fa7f1ce9190b8a26e72bebbcceed04fb7494 (patch)
treee59c616660b9ce7e0c9fad5384d37422438fbf61 /indra/newview/llfloatersnapshot.cpp
parentc7c755b82e736050a514792a4c4bbdee9bf981d3 (diff)
ACME-1293 : Use notification to signal from the snapshot panel to its container rather than grabbing global instances, use unique control_name for widgets, fix Post button visibility on Twitter
Diffstat (limited to 'indra/newview/llfloatersnapshot.cpp')
-rwxr-xr-xindra/newview/llfloatersnapshot.cpp64
1 files changed, 27 insertions, 37 deletions
diff --git a/indra/newview/llfloatersnapshot.cpp b/indra/newview/llfloatersnapshot.cpp
index 27a9e3da44..3a176b82d2 100755
--- a/indra/newview/llfloatersnapshot.cpp
+++ b/indra/newview/llfloatersnapshot.cpp
@@ -1091,6 +1091,7 @@ BOOL LLFloaterSnapshot::postBuild()
getChild<LLComboBox>("local_format_combo")->selectNthItem(0);
impl.mPreviewHandle = previewp->getHandle();
+ previewp->setContainer(this);
impl.updateControls(this);
impl.updateLayout(this);
@@ -1255,6 +1256,32 @@ S32 LLFloaterSnapshot::notify(const LLSD& info)
impl.setStatus(Impl::STATUS_FINISHED, data["ok"].asBoolean(), data["msg"].asString());
return 1;
}
+
+ if (info.has("snapshot-updating"))
+ {
+ // Disable the send/post/save buttons until snapshot is ready.
+ impl.updateControls(this);
+ // Force hiding the "Refresh to save" hint because we know we've just started refresh.
+ impl.setNeedRefresh(this, false);
+ return 1;
+ }
+
+ if (info.has("snapshot-updated"))
+ {
+ // Enable the send/post/save buttons.
+ impl.updateControls(this);
+ // We've just done refresh.
+ impl.setNeedRefresh(this, false);
+
+ // The refresh button is initially hidden. We show it after the first update,
+ // i.e. when preview appears.
+ if (!mRefreshBtn->getVisible())
+ {
+ mRefreshBtn->setVisible(true);
+ }
+ return 1;
+ }
+
return 0;
}
@@ -1334,43 +1361,6 @@ BOOL LLFloaterSnapshot::saveLocal()
}
// static
-void LLFloaterSnapshot::preUpdate()
-{
- // FIXME: duplicated code
- LLFloaterSnapshot* instance = LLFloaterReg::findTypedInstance<LLFloaterSnapshot>("snapshot");
- if (instance)
- {
- // Disable the send/post/save buttons until snapshot is ready.
- Impl::updateControls(instance);
-
- // Force hiding the "Refresh to save" hint because we know we've just started refresh.
- Impl::setNeedRefresh(instance, false);
- }
-}
-
-// static
-void LLFloaterSnapshot::postUpdate()
-{
- // FIXME: duplicated code
- LLFloaterSnapshot* instance = LLFloaterReg::findTypedInstance<LLFloaterSnapshot>("snapshot");
- if (instance)
- {
- // Enable the send/post/save buttons.
- Impl::updateControls(instance);
-
- // We've just done refresh.
- Impl::setNeedRefresh(instance, false);
-
- // The refresh button is initially hidden. We show it after the first update,
- // i.e. when preview appears.
- if (!instance->mRefreshBtn->getVisible())
- {
- instance->mRefreshBtn->setVisible(true);
- }
- }
-}
-
-// static
void LLFloaterSnapshot::postSave()
{
LLFloaterSnapshot* instance = LLFloaterReg::findTypedInstance<LLFloaterSnapshot>("snapshot");