diff options
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/llfloaterbulkythumbs.cpp | 65 | ||||
-rw-r--r-- | indra/newview/llfloaterbulkythumbs.h | 34 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_bulky_thumbs.xml | 2 |
3 files changed, 75 insertions, 26 deletions
diff --git a/indra/newview/llfloaterbulkythumbs.cpp b/indra/newview/llfloaterbulkythumbs.cpp index 14ecc32c40..4392d1a906 100644 --- a/indra/newview/llfloaterbulkythumbs.cpp +++ b/indra/newview/llfloaterbulkythumbs.cpp @@ -1,4 +1,4 @@ -/** +/** * @file llfloaterbulkythumbs.cpp * @author Callum Prentice * @brief LLFloaterBulkyThumbs class implementation @@ -6,21 +6,21 @@ * $LicenseInfo:firstyear=2008&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, 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$ */ @@ -34,10 +34,12 @@ #include "llfloaterbulkythumbs.h" #include "lluictrlfactory.h" +#include "llclipboard.h" +#include "llinventorymodel.h" +#include "lltexteditor.h" - -LLFloaterBulkyThumbs::LLFloaterBulkyThumbs(const LLSD &key) - : LLFloater("floater_bulky_thumbs") +LLFloaterBulkyThumbs::LLFloaterBulkyThumbs(const LLSD& key) + : LLFloater("floater_bulky_thumbs") { } @@ -48,6 +50,10 @@ BOOL LLFloaterBulkyThumbs::postBuild() mPasteFromInventoryBtn = getChild<LLUICtrl>("paste_from_inventory"); mPasteFromInventoryBtn->setCommitCallback(boost::bind(&LLFloaterBulkyThumbs::onPasteFromInventory, this)); + mInventoryItems = getChild<LLTextEditor>("inventory_items"); + mInventoryItems->setMaxTextLength(0x8000); + mInventoryItems->setCommitCallback(boost::bind(&LLFloaterBulkyThumbs::onCommitInventoryItems, this)); + mProcessBulkyThumbsBtn = getChild<LLUICtrl>("process_bulky_thumbs"); mProcessBulkyThumbsBtn->setCommitCallback(boost::bind(&LLFloaterBulkyThumbs::onProcessBulkyThumbs, this)); mProcessBulkyThumbsBtn->setEnabled(false); @@ -57,7 +63,46 @@ BOOL LLFloaterBulkyThumbs::postBuild() void LLFloaterBulkyThumbs::onPasteFromInventory() -{ std::cout << "onPasteFromInventory" << std::endl; } +{ + std::cout << "onPasteFromInventory" << std::endl; + + if (!LLClipboard::instance().hasContents()) + { + return; + } + + std::vector<LLUUID> objects; + LLClipboard::instance().pasteFromClipboard(objects); + size_t count = objects.size(); + + if (count > 0) + { + mInventoryItems->clear(); + + for (size_t i = 0; i < count; i++) + { + const LLUUID& item_id = objects.at(i); + + const LLInventoryItem* item = gInventory.getItem(item_id); + if (item) + { + if (item->getType() == LLAssetType::AT_OBJECT) + { + mInventoryItems->appendText(item->getName(), "\n"); + } + } + } + + mProcessBulkyThumbsBtn->setEnabled(true); + } +} void LLFloaterBulkyThumbs::onProcessBulkyThumbs() -{ std::cout << "onProcessBulkyThumbs" << std::endl; } +{ + std::cout << "onProcessBulkyThumbs" << std::endl; +} + +void LLFloaterBulkyThumbs::onCommitInventoryItems() +{ + std::cout << "onCommitInventoryItems" << std::endl; +} diff --git a/indra/newview/llfloaterbulkythumbs.h b/indra/newview/llfloaterbulkythumbs.h index 9c951211d7..6d43ff9bc6 100644 --- a/indra/newview/llfloaterbulkythumbs.h +++ b/indra/newview/llfloaterbulkythumbs.h @@ -1,4 +1,4 @@ -/** +/** * @file llfloaterbulkythumbs.h * @author Callum Prentice * @brief Helper floater for bulk processing of inventory thumbnails @@ -6,21 +6,21 @@ * $LicenseInfo:firstyear=2008&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, 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$ */ @@ -29,21 +29,25 @@ #define LL_LLFLOATERBULKYTHUMBS_H #include "llfloater.h" +class LLTextEditor; class LLFloaterBulkyThumbs: - public LLFloater + public LLFloater { - friend class LLFloaterReg; -private: - LLFloaterBulkyThumbs(const LLSD &key); - BOOL postBuild() override; - ~LLFloaterBulkyThumbs(); + friend class LLFloaterReg; + private: + LLFloaterBulkyThumbs(const LLSD& key); + BOOL postBuild() override; + ~LLFloaterBulkyThumbs(); + + LLUICtrl* mPasteFromInventoryBtn; + void onPasteFromInventory(); - LLUICtrl *mPasteFromInventoryBtn; - void onPasteFromInventory(); + LLTextEditor* mInventoryItems; + void onCommitInventoryItems(); - LLUICtrl *mProcessBulkyThumbsBtn; - void onProcessBulkyThumbs(); + LLUICtrl* mProcessBulkyThumbsBtn; + void onProcessBulkyThumbs(); }; #endif // LL_LLFLOATERBULKYTHUMBS_H diff --git a/indra/newview/skins/default/xui/en/floater_bulky_thumbs.xml b/indra/newview/skins/default/xui/en/floater_bulky_thumbs.xml index 867c8fdc20..ecb07db8fa 100644 --- a/indra/newview/skins/default/xui/en/floater_bulky_thumbs.xml +++ b/indra/newview/skins/default/xui/en/floater_bulky_thumbs.xml @@ -23,7 +23,7 @@ height="510" follows="top|left|right|bottom" left_delta="0" - name="inv_items" + name="inventory_items" top_pad="10" width="480"> Entry 1 |