summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelsnapshot.cpp
diff options
context:
space:
mode:
authorAnsariel <ansariel.hiller@phoenixviewer.com>2024-05-22 21:25:21 +0200
committerAndrey Lihatskiy <alihatskiy@productengine.com>2024-05-22 22:40:26 +0300
commite2e37cced861b98de8c1a7c9c0d3a50d2d90e433 (patch)
tree1bb897489ce524986f6196201c10ac0d8861aa5f /indra/newview/llpanelsnapshot.cpp
parent069ea06848f766466f1a281144c82a0f2bd79f3a (diff)
Fix line endlings
Diffstat (limited to 'indra/newview/llpanelsnapshot.cpp')
-rw-r--r--indra/newview/llpanelsnapshot.cpp490
1 files changed, 245 insertions, 245 deletions
diff --git a/indra/newview/llpanelsnapshot.cpp b/indra/newview/llpanelsnapshot.cpp
index 5dc5a7437a..2536dce606 100644
--- a/indra/newview/llpanelsnapshot.cpp
+++ b/indra/newview/llpanelsnapshot.cpp
@@ -1,245 +1,245 @@
-/**
- * @file llpanelsnapshot.cpp
- * @brief Snapshot panel base class
- *
- * $LicenseInfo:firstyear=2011&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2011, Linden Research, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
- * $/LicenseInfo$
- */
-
-#include "llviewerprecompiledheaders.h"
-#include "llpanelsnapshot.h"
-
-// libs
-#include "llcombobox.h"
-#include "llfloater.h"
-#include "llfloatersnapshot.h"
-#include "llsliderctrl.h"
-#include "llspinctrl.h"
-#include "lltrans.h"
-
-// newview
-#include "llsidetraypanelcontainer.h"
-#include "llviewercontrol.h" // gSavedSettings
-
-#include "llagentbenefits.h"
-
-constexpr S32 MAX_TEXTURE_SIZE = 512 ; //max upload texture size 512 * 512
-
-S32 power_of_two(S32 sz, S32 upper)
-{
- S32 res = upper;
- while( upper >= sz)
- {
- res = upper;
- upper >>= 1;
- }
- return res;
-}
-
-LLPanelSnapshot::LLPanelSnapshot()
- : mSnapshotFloater(NULL)
-{}
-
-// virtual
-bool LLPanelSnapshot::postBuild()
-{
- getChild<LLUICtrl>("save_btn")->setLabelArg("[UPLOAD_COST]", std::to_string(LLAgentBenefitsMgr::current().getTextureUploadCost()));
- getChild<LLUICtrl>(getImageSizeComboName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onResolutionComboCommit, this, _1));
- if (!getWidthSpinnerName().empty())
- {
- getChild<LLUICtrl>(getWidthSpinnerName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onCustomResolutionCommit, this));
- }
- if (!getHeightSpinnerName().empty())
- {
- getChild<LLUICtrl>(getHeightSpinnerName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onCustomResolutionCommit, this));
- }
- if (!getAspectRatioCBName().empty())
- {
- getChild<LLUICtrl>(getAspectRatioCBName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onKeepAspectRatioCommit, this, _1));
- }
- updateControls(LLSD());
-
- mSnapshotFloater = getParentByType<LLFloaterSnapshotBase>();
- return true;
-}
-
-// virtual
-void LLPanelSnapshot::onOpen(const LLSD& key)
-{
- S32 old_format = gSavedSettings.getS32("SnapshotFormat");
- S32 new_format = (S32) getImageFormat();
-
- gSavedSettings.setS32("SnapshotFormat", new_format);
- setCtrlsEnabled(true);
-
- // Switching panels will likely change image format.
- // Not updating preview right away may lead to errors,
- // e.g. attempt to send a large BMP image by email.
- if (old_format != new_format)
- {
- getParentByType<LLFloater>()->notify(LLSD().with("image-format-change", true));
- }
-}
-
-LLSnapshotModel::ESnapshotFormat LLPanelSnapshot::getImageFormat() const
-{
- return LLSnapshotModel::SNAPSHOT_FORMAT_JPEG;
-}
-
-void LLPanelSnapshot::enableControls(bool enable)
-{
- setCtrlsEnabled(enable);
-}
-
-LLSpinCtrl* LLPanelSnapshot::getWidthSpinner()
-{
- llassert(!getWidthSpinnerName().empty());
- return getChild<LLSpinCtrl>(getWidthSpinnerName());
-}
-
-LLSpinCtrl* LLPanelSnapshot::getHeightSpinner()
-{
- llassert(!getHeightSpinnerName().empty());
- return getChild<LLSpinCtrl>(getHeightSpinnerName());
-}
-
-S32 LLPanelSnapshot::getTypedPreviewWidth() const
-{
- llassert(!getWidthSpinnerName().empty());
- return getChild<LLUICtrl>(getWidthSpinnerName())->getValue().asInteger();
-}
-
-S32 LLPanelSnapshot::getTypedPreviewHeight() const
-{
- llassert(!getHeightSpinnerName().empty());
- return getChild<LLUICtrl>(getHeightSpinnerName())->getValue().asInteger();
-}
-
-void LLPanelSnapshot::enableAspectRatioCheckbox(bool enable)
-{
- llassert(!getAspectRatioCBName().empty());
- getChild<LLUICtrl>(getAspectRatioCBName())->setEnabled(enable);
-}
-
-LLSideTrayPanelContainer* LLPanelSnapshot::getParentContainer()
-{
- LLSideTrayPanelContainer* parent = dynamic_cast<LLSideTrayPanelContainer*>(getParent());
- if (!parent)
- {
- LL_WARNS() << "Cannot find panel container" << LL_ENDL;
- return NULL;
- }
-
- return parent;
-}
-
-void LLPanelSnapshot::updateImageQualityLevel()
-{
- LLSliderCtrl* quality_slider = getChild<LLSliderCtrl>("image_quality_slider");
- S32 quality_val = llfloor((F32) quality_slider->getValue().asReal());
-
- std::string quality_lvl;
-
- if (quality_val < 20)
- {
- quality_lvl = LLTrans::getString("snapshot_quality_very_low");
- }
- else if (quality_val < 40)
- {
- quality_lvl = LLTrans::getString("snapshot_quality_low");
- }
- else if (quality_val < 60)
- {
- quality_lvl = LLTrans::getString("snapshot_quality_medium");
- }
- else if (quality_val < 80)
- {
- quality_lvl = LLTrans::getString("snapshot_quality_high");
- }
- else
- {
- quality_lvl = LLTrans::getString("snapshot_quality_very_high");
- }
-
- getChild<LLTextBox>("image_quality_level")->setTextArg("[QLVL]", quality_lvl);
-}
-
-void LLPanelSnapshot::goBack()
-{
- LLSideTrayPanelContainer* parent = getParentContainer();
- if (parent)
- {
- parent->openPreviousPanel();
- parent->getCurrentPanel()->onOpen(LLSD());
- }
-}
-
-void LLPanelSnapshot::cancel()
-{
- goBack();
- getParentByType<LLFloater>()->notify(LLSD().with("set-ready", true));
-}
-
-void LLPanelSnapshot::onCustomResolutionCommit()
-{
- LLSD info;
- std::string widthSpinnerName = getWidthSpinnerName();
- std::string heightSpinnerName = getHeightSpinnerName();
- llassert(!widthSpinnerName.empty() && !heightSpinnerName.empty());
- LLSpinCtrl *widthSpinner = getChild<LLSpinCtrl>(widthSpinnerName);
- LLSpinCtrl *heightSpinner = getChild<LLSpinCtrl>(heightSpinnerName);
- if (getName() == "panel_snapshot_inventory")
- {
- S32 width = widthSpinner->getValue().asInteger();
- width = power_of_two(width, MAX_TEXTURE_SIZE);
- info["w"] = width;
- widthSpinner->setIncrement(width >> 1);
- widthSpinner->forceSetValue(width);
- S32 height = heightSpinner->getValue().asInteger();
- height = power_of_two(height, MAX_TEXTURE_SIZE);
- heightSpinner->setIncrement(height >> 1);
- heightSpinner->forceSetValue(height);
- info["h"] = height;
- }
- else
- {
- info["w"] = widthSpinner->getValue().asInteger();
- info["h"] = heightSpinner->getValue().asInteger();
- }
- getParentByType<LLFloater>()->notify(LLSD().with("custom-res-change", info));
-}
-
-void LLPanelSnapshot::onResolutionComboCommit(LLUICtrl* ctrl)
-{
- LLSD info;
- info["combo-res-change"]["control-name"] = ctrl->getName();
- getParentByType<LLFloater>()->notify(info);
-}
-
-void LLPanelSnapshot::onKeepAspectRatioCommit(LLUICtrl* ctrl)
-{
- getParentByType<LLFloater>()->notify(LLSD().with("keep-aspect-change", ctrl->getValue().asBoolean()));
-}
-
-LLSnapshotModel::ESnapshotType LLPanelSnapshot::getSnapshotType()
-{
- return LLSnapshotModel::SNAPSHOT_WEB;
-}
+/**
+ * @file llpanelsnapshot.cpp
+ * @brief Snapshot panel base class
+ *
+ * $LicenseInfo:firstyear=2011&license=viewerlgpl$
+ * Second Life Viewer Source Code
+ * Copyright (C) 2011, Linden Research, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation;
+ * version 2.1 of the License only.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
+ * $/LicenseInfo$
+ */
+
+#include "llviewerprecompiledheaders.h"
+#include "llpanelsnapshot.h"
+
+// libs
+#include "llcombobox.h"
+#include "llfloater.h"
+#include "llfloatersnapshot.h"
+#include "llsliderctrl.h"
+#include "llspinctrl.h"
+#include "lltrans.h"
+
+// newview
+#include "llsidetraypanelcontainer.h"
+#include "llviewercontrol.h" // gSavedSettings
+
+#include "llagentbenefits.h"
+
+constexpr S32 MAX_TEXTURE_SIZE = 512 ; //max upload texture size 512 * 512
+
+S32 power_of_two(S32 sz, S32 upper)
+{
+ S32 res = upper;
+ while( upper >= sz)
+ {
+ res = upper;
+ upper >>= 1;
+ }
+ return res;
+}
+
+LLPanelSnapshot::LLPanelSnapshot()
+ : mSnapshotFloater(NULL)
+{}
+
+// virtual
+bool LLPanelSnapshot::postBuild()
+{
+ getChild<LLUICtrl>("save_btn")->setLabelArg("[UPLOAD_COST]", std::to_string(LLAgentBenefitsMgr::current().getTextureUploadCost()));
+ getChild<LLUICtrl>(getImageSizeComboName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onResolutionComboCommit, this, _1));
+ if (!getWidthSpinnerName().empty())
+ {
+ getChild<LLUICtrl>(getWidthSpinnerName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onCustomResolutionCommit, this));
+ }
+ if (!getHeightSpinnerName().empty())
+ {
+ getChild<LLUICtrl>(getHeightSpinnerName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onCustomResolutionCommit, this));
+ }
+ if (!getAspectRatioCBName().empty())
+ {
+ getChild<LLUICtrl>(getAspectRatioCBName())->setCommitCallback(boost::bind(&LLPanelSnapshot::onKeepAspectRatioCommit, this, _1));
+ }
+ updateControls(LLSD());
+
+ mSnapshotFloater = getParentByType<LLFloaterSnapshotBase>();
+ return true;
+}
+
+// virtual
+void LLPanelSnapshot::onOpen(const LLSD& key)
+{
+ S32 old_format = gSavedSettings.getS32("SnapshotFormat");
+ S32 new_format = (S32) getImageFormat();
+
+ gSavedSettings.setS32("SnapshotFormat", new_format);
+ setCtrlsEnabled(true);
+
+ // Switching panels will likely change image format.
+ // Not updating preview right away may lead to errors,
+ // e.g. attempt to send a large BMP image by email.
+ if (old_format != new_format)
+ {
+ getParentByType<LLFloater>()->notify(LLSD().with("image-format-change", true));
+ }
+}
+
+LLSnapshotModel::ESnapshotFormat LLPanelSnapshot::getImageFormat() const
+{
+ return LLSnapshotModel::SNAPSHOT_FORMAT_JPEG;
+}
+
+void LLPanelSnapshot::enableControls(bool enable)
+{
+ setCtrlsEnabled(enable);
+}
+
+LLSpinCtrl* LLPanelSnapshot::getWidthSpinner()
+{
+ llassert(!getWidthSpinnerName().empty());
+ return getChild<LLSpinCtrl>(getWidthSpinnerName());
+}
+
+LLSpinCtrl* LLPanelSnapshot::getHeightSpinner()
+{
+ llassert(!getHeightSpinnerName().empty());
+ return getChild<LLSpinCtrl>(getHeightSpinnerName());
+}
+
+S32 LLPanelSnapshot::getTypedPreviewWidth() const
+{
+ llassert(!getWidthSpinnerName().empty());
+ return getChild<LLUICtrl>(getWidthSpinnerName())->getValue().asInteger();
+}
+
+S32 LLPanelSnapshot::getTypedPreviewHeight() const
+{
+ llassert(!getHeightSpinnerName().empty());
+ return getChild<LLUICtrl>(getHeightSpinnerName())->getValue().asInteger();
+}
+
+void LLPanelSnapshot::enableAspectRatioCheckbox(bool enable)
+{
+ llassert(!getAspectRatioCBName().empty());
+ getChild<LLUICtrl>(getAspectRatioCBName())->setEnabled(enable);
+}
+
+LLSideTrayPanelContainer* LLPanelSnapshot::getParentContainer()
+{
+ LLSideTrayPanelContainer* parent = dynamic_cast<LLSideTrayPanelContainer*>(getParent());
+ if (!parent)
+ {
+ LL_WARNS() << "Cannot find panel container" << LL_ENDL;
+ return NULL;
+ }
+
+ return parent;
+}
+
+void LLPanelSnapshot::updateImageQualityLevel()
+{
+ LLSliderCtrl* quality_slider = getChild<LLSliderCtrl>("image_quality_slider");
+ S32 quality_val = llfloor((F32) quality_slider->getValue().asReal());
+
+ std::string quality_lvl;
+
+ if (quality_val < 20)
+ {
+ quality_lvl = LLTrans::getString("snapshot_quality_very_low");
+ }
+ else if (quality_val < 40)
+ {
+ quality_lvl = LLTrans::getString("snapshot_quality_low");
+ }
+ else if (quality_val < 60)
+ {
+ quality_lvl = LLTrans::getString("snapshot_quality_medium");
+ }
+ else if (quality_val < 80)
+ {
+ quality_lvl = LLTrans::getString("snapshot_quality_high");
+ }
+ else
+ {
+ quality_lvl = LLTrans::getString("snapshot_quality_very_high");
+ }
+
+ getChild<LLTextBox>("image_quality_level")->setTextArg("[QLVL]", quality_lvl);
+}
+
+void LLPanelSnapshot::goBack()
+{
+ LLSideTrayPanelContainer* parent = getParentContainer();
+ if (parent)
+ {
+ parent->openPreviousPanel();
+ parent->getCurrentPanel()->onOpen(LLSD());
+ }
+}
+
+void LLPanelSnapshot::cancel()
+{
+ goBack();
+ getParentByType<LLFloater>()->notify(LLSD().with("set-ready", true));
+}
+
+void LLPanelSnapshot::onCustomResolutionCommit()
+{
+ LLSD info;
+ std::string widthSpinnerName = getWidthSpinnerName();
+ std::string heightSpinnerName = getHeightSpinnerName();
+ llassert(!widthSpinnerName.empty() && !heightSpinnerName.empty());
+ LLSpinCtrl *widthSpinner = getChild<LLSpinCtrl>(widthSpinnerName);
+ LLSpinCtrl *heightSpinner = getChild<LLSpinCtrl>(heightSpinnerName);
+ if (getName() == "panel_snapshot_inventory")
+ {
+ S32 width = widthSpinner->getValue().asInteger();
+ width = power_of_two(width, MAX_TEXTURE_SIZE);
+ info["w"] = width;
+ widthSpinner->setIncrement(width >> 1);
+ widthSpinner->forceSetValue(width);
+ S32 height = heightSpinner->getValue().asInteger();
+ height = power_of_two(height, MAX_TEXTURE_SIZE);
+ heightSpinner->setIncrement(height >> 1);
+ heightSpinner->forceSetValue(height);
+ info["h"] = height;
+ }
+ else
+ {
+ info["w"] = widthSpinner->getValue().asInteger();
+ info["h"] = heightSpinner->getValue().asInteger();
+ }
+ getParentByType<LLFloater>()->notify(LLSD().with("custom-res-change", info));
+}
+
+void LLPanelSnapshot::onResolutionComboCommit(LLUICtrl* ctrl)
+{
+ LLSD info;
+ info["combo-res-change"]["control-name"] = ctrl->getName();
+ getParentByType<LLFloater>()->notify(info);
+}
+
+void LLPanelSnapshot::onKeepAspectRatioCommit(LLUICtrl* ctrl)
+{
+ getParentByType<LLFloater>()->notify(LLSD().with("keep-aspect-change", ctrl->getValue().asBoolean()));
+}
+
+LLSnapshotModel::ESnapshotType LLPanelSnapshot::getSnapshotType()
+{
+ return LLSnapshotModel::SNAPSHOT_WEB;
+}