diff options
author | Merov Linden <merov@lindenlab.com> | 2014-02-26 17:22:16 -0800 |
---|---|---|
committer | Merov Linden <merov@lindenlab.com> | 2014-02-26 17:22:16 -0800 |
commit | ed38a0aede09f42c4fe7eb4dd53ecd6490d12ca0 (patch) | |
tree | 239e4316183fe9b70d5ac3ee50aa4c697127f7e1 /indra/newview/llfloaterflickr.cpp | |
parent | 8fb94a96b18d3b115b75f6d40a06da1c31d21623 (diff) |
ACME-1327 : WIP : Make rescale of preview isotropic, make preview button a toggle
Diffstat (limited to 'indra/newview/llfloaterflickr.cpp')
-rw-r--r-- | indra/newview/llfloaterflickr.cpp | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/indra/newview/llfloaterflickr.cpp b/indra/newview/llfloaterflickr.cpp index 21c619730c..e93adf1570 100644 --- a/indra/newview/llfloaterflickr.cpp +++ b/indra/newview/llfloaterflickr.cpp @@ -66,6 +66,7 @@ LLFlickrPhotoPanel::LLFlickrPhotoPanel() : mSnapshotPanel(NULL), mResolutionComboBox(NULL), mRefreshBtn(NULL), +mBtnPreview(NULL), mWorkingLabel(NULL), mThumbnailPlaceholder(NULL), mTitleTextBox(NULL), @@ -98,6 +99,7 @@ BOOL LLFlickrPhotoPanel::postBuild() mFilterComboBox = getChild<LLUICtrl>("filters_combobox"); mFilterComboBox->setCommitCallback(boost::bind(&LLFlickrPhotoPanel::updateResolution, this, TRUE)); mRefreshBtn = getChild<LLUICtrl>("new_snapshot_btn"); + mBtnPreview = getChild<LLButton>("big_preview_btn"); mWorkingLabel = getChild<LLUICtrl>("working_lbl"); mThumbnailPlaceholder = getChild<LLUICtrl>("thumbnail_placeholder"); mTitleTextBox = getChild<LLUICtrl>("photo_title"); @@ -162,8 +164,14 @@ void LLFlickrPhotoPanel::draw() mResolutionComboBox->setEnabled(no_ongoing_connection); mFilterComboBox->setEnabled(no_ongoing_connection); mRefreshBtn->setEnabled(no_ongoing_connection); + mBtnPreview->setEnabled(no_ongoing_connection); mLocationCheckbox->setEnabled(no_ongoing_connection); + // Toggle the button state as appropriate + LLFloaterBigPreview* big_preview_floater = dynamic_cast<LLFloaterBigPreview*>(LLFloaterReg::getInstance("big_preview")); + bool preview_active = (big_preview_floater && big_preview_floater->getVisible() && big_preview_floater->isFloaterOwner(getParentByType<LLFloater>())); + mBtnPreview->setToggleState(preview_active); + // Display the preview if one is available if (previewp && previewp->getThumbnailImage()) { @@ -256,13 +264,22 @@ void LLFlickrPhotoPanel::onClickNewSnapshot() void LLFlickrPhotoPanel::onClickBigPreview() { LLFloaterBigPreview* big_preview_floater = dynamic_cast<LLFloaterBigPreview*>(LLFloaterReg::getInstance("big_preview")); - if (big_preview_floater) - { - LLSnapshotLivePreview* previewp = getPreviewView(); - big_preview_floater->setPreview(previewp); - big_preview_floater->setFloaterOwner(getParentByType<LLFloater>()); - } - LLFloaterReg::showInstance("big_preview"); + bool preview_active = (big_preview_floater && big_preview_floater->getVisible() && big_preview_floater->isFloaterOwner(getParentByType<LLFloater>())); + // Toggle the preview + if (preview_active) + { + LLFloaterReg::hideInstance("big_preview"); + } + else + { + if (big_preview_floater) + { + LLSnapshotLivePreview* previewp = getPreviewView(); + big_preview_floater->setPreview(previewp); + big_preview_floater->setFloaterOwner(getParentByType<LLFloater>()); + } + LLFloaterReg::showInstance("big_preview"); + } } void LLFlickrPhotoPanel::onSend() |