summaryrefslogtreecommitdiff
path: root/indra/newview/lltooldraganddrop.h
AgeCommit message (Collapse)Author
2016-09-15MAINT-5232: Normalize LLSingleton subclasses.Nat Goodspeed
A shocking number of LLSingleton subclasses had public constructors -- and in several instances, were being explicitly instantiated independently of the LLSingleton machinery. This breaks the new LLSingleton dependency-tracking machinery. It seems only fair that if you say you want an LLSingleton, there should only be ONE INSTANCE! Introduce LLSINGLETON() and LLSINGLETON_EMPTY_CTOR() macros. These handle the friend class LLSingleton<whatevah>; and explicitly declare a private nullary constructor. To try to enforce the LLSINGLETON() convention, introduce a new pure virtual LLSingleton method you_must_use_LLSINGLETON_macro() which is, as you might suspect, defined by the macro. If you declare an LLSingleton subclass without using LLSINGLETON() or LLSINGLETON_EMPTY_CTOR() in the class body, you can't instantiate the subclass for lack of a you_must_use_LLSINGLETON_macro() implementation -- which will hopefully remind the coder. Trawl through ALL LLSingleton subclass definitions, sprinkling in LLSINGLETON() or LLSINGLETON_EMPTY_CTOR() as appropriate. Remove all explicit constructor declarations, public or private, along with relevant 'friend class LLSingleton<myself>' declarations. Where destructors are declared, move them into private section as well. Where the constructor was inline but nontrivial, move out of class body. Fix several LLSingleton abuses revealed by making ctors/dtors private: LLGlobalEconomy was both an LLSingleton and the base class for LLRegionEconomy, a non-LLSingleton. (Therefore every LLRegionEconomy instance contained another instance of the LLGlobalEconomy "singleton.") Extract LLBaseEconomy; LLGlobalEconomy is now a trivial subclass of that. LLRegionEconomy, as you might suspect, now derives from LLBaseEconomy. LLToolGrab, an LLSingleton, was also explicitly instantiated by LLToolCompGun's constructor. Extract LLToolGrabBase, explicitly instantiated, with trivial subclass LLToolGrab, the LLSingleton instance. (WARNING: LLToolGrabBase methods have an unnerving tendency to go after LLToolGrab::getInstance(). I DO NOT KNOW what should be the relationship between the instance in LLToolCompGun and the LLToolGrab singleton instance.) LLGridManager declared a variant constructor accepting (const std::string&), with the comment: // initialize with an explicity grid file for testing. As there is no evidence of this being called from anywhere, delete it. LLChicletBar's constructor accepted an optional (const LLSD&). As the LLSD parameter wasn't used, and as there is no evidence of it being passed from anywhere, delete the parameter. LLViewerWindow::shutdownViews() was checking LLNavigationBar:: instanceExists(), then deleting its getInstance() pointer -- leaving a dangling LLSingleton instance pointer, a land mine if any subsequent code should attempt to reference it. Use deleteSingleton() instead. ~LLAppViewer() was calling LLViewerEventRecorder::instance() and then explicitly calling ~LLViewerEventRecorder() on that instance -- leaving the LLSingleton instance pointer pointing to an allocated-but-destroyed instance. Use deleteSingleton() instead.
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-03-18DD-292 : Decrement cargo count when dropping items one by one in the ↵Merov Linden
marketplace listings folder
2014-07-01MAINT-4086 FIXED Limit the number items "Replace Current Outfit" or "Wear" ↵andreykproductengine
applies to
2013-07-30Summer cleaning - removed a lot of llcommon dependencies to speed up build timesRichard Linden
consolidated most indra-specific constants in llcommon under indra_constants.h fixed issues with operations on mixed unit types (implicit and explicit) made LL_INFOS() style macros variadic in order to subsume other logging methods such as ll_infos added optional tag output to error recorders
2013-03-29Update Mac and Windows breakpad builds to latestGraham Madarasz
2012-07-27Pull and merge from ssh://hg@bitbucket.org/lindenlab/viewer-release.Todd Stinson
2012-06-08CHUI-120 WIP Added conversations participants drag and drop from avatar ↵Seth ProductEngine
lists to IM floaters. - Added new drag and drop type DAD_PERSON and source SOURCE_PEOPLE to avoid highliting the toolbars when using SOURCE_VIEWER. - Disabled calling card drop support as it is considered obsolete.
2012-05-22MAINT-119 FIXED (PUBLIC]no-transfer textures not searchable via texture picker)Paul ProductEngine
- Implemented Richard's and Leo's spec - Also fixed an issue when applying no-transfer texture for an object using texture picker, creates redundant copies of the texture in the object's content
2012-02-02EXP-1856 FIX -- Calling cards, library items, 'no transfer' objects can be ↵Leslie Linden
copied to Merchant outbox via ctrl-v * Viewer now applies the same logic as inventory drag and drop to clipboard paste operations.
2012-01-12EXP-1795 FIX -- Update warning dialog for dragging and dropping no-copy ↵Leslie Linden
items to Merchant Outbox * Any drag and drop or copy operation to the merchant outbox that contains one or more no-copy items now brings up a single modal dialog prompting the user to move the no-copy items to the outbox or to leave them all behind.
2011-12-16EXP-1738 FIXLeslie Linden
EXP-1739 FIX * Initial pass to block drag and drop of multiple items when resultant outbox folder would contain too many items or folders.
2011-10-03EXP-1286 : First pass at Drag and Drop of tools. Not functional. Most hooks ↵Merov Linden
into the LLToolDragAndDrop system in to support the new AT_WIDGET and SOURCE_VIEWER
2010-10-13correct licenses (fix problem with license change merge)Oz Linden
2010-09-22MergeMatthew Breindel (Falcon)
2010-09-22Remove LL_MESH_ENABLED macros (fixes drag and drop). Add mesh stitching ↵Dave Parks
type back into tools floater.
2010-09-21Fix for build failures - disabling tcmalloc for nowBrad Payne (Vir Linden)
2010-06-14Builds with LLConvexDecompInter as a static lib.Dave Parks
2010-06-10Add "LL_MESH_ENABLED" preprocessor flag for toggling mesh code. Couple of ↵Dave Parks
merge fixes.
2010-06-07Merge with render-pipelineDave Parks
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-06-01EXT-6710 FIXED Added inventory items sharing confirmation and modified alert ↵Alexei Arabadji
about non-copy objects sharing. Current behavior: * user will be prompted about sharing items regardless is it one or more items; * user will be prompted about trying to share one ore more non-copy items; * in case user tries to share non-copy items among with copy items — copy tems will be shared and user will be prompted about sharing non-copy items reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/475/ --HG-- branch : product-engine
2010-05-21EXT-6710 WIP Prepare to implementation - "Give inventory" related ↵Mike Antipov
functionality was moved from the LLToolDragAndDrop to a separate class - LLGiveInventory. To allow give several inventory items to several selected residents I need some functionality encapsulated in LLToolDragAndDrop class out of it. No functionality should be changed. LLToolDragAndDrop was updated to use new LLGiveInventory'methods instead of removed ones. There were moved methods related to: - give inventory item - give inventory category - log into chat Such functionality was moved: - is give acceptable - do inventory give operation - send give inventory request to server - process give inventory for protected items QA Notes: Functionality related to give inventory via drag and drop should be re-tested closely. Reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/364/ --HG-- branch : product-engine
2010-03-30HUGE merge from viewer-trunk. Many conflicts resolved.Tofu Linden
2010-03-29EXT-5940 : Typedef all vector<LLUUID>'sLoren Shih
Superficial cleanup to change all typedef std::vector<LLUUID> to use a common typedef uuid_vec_t instead.
2010-03-20mergeDave Parks
2010-03-12Fixed reopened normal sub-task EXT-5950 (Do not spawn IM chiclet for "drop ↵Andrew Dyukov
on avatar" inventory offers). - Added logging of "Inventory item offered" message when dnd'ing item on avatar via new LLToolDragAndDrop::logInventoryOffer() method. --HG-- branch : product-engine
2010-01-13drag-and-drop mesh asset onto in-world objectKarl Stiefvater (qarl)
2009-12-01EXT-2964 : Can drag-and-drop a folder with links onto an objectLoren Shih
EXT-3012 : Cleanup LLToolDragAndDrop Now checking if folder contents have links before allowing object drop. Did some superficial cleanup of lltooldraganddrop files. --HG-- branch : avatar-pipeline
2009-11-30INFRASTRUCTURE: LLToolDragAndDrop cleanupLoren Shih
Includes removal of unused header files. Includes changing big static map into a lldictionary. --HG-- branch : avatar-pipeline
2009-10-03Merge inspectors UI project, gooey-4, into viewer-2 trunk. Added new ↵James Cook
tooltips to 3D avatars, 2D avatar names, and 3D objects. Refactors tooltips and text boxes, line editors, and text editors. Breaks LLExpandableTextBox, but a fix is coming. Resolved conflicts in lltexteditor.cpp, llchatitemscontainerctrl.cpp, llchatmsgbox.cpp, llfloaterbuycurrency.cpp, llnearbychat.cpp, floater_buy_currency.xml, and ru/strings.xml Merging revisions 134925-135157 of svn+ssh://svn.lindenlab.com/svn/linden/branches/gooey/gooey-4 into C:\source\viewer-2.0.0-3, respecting ancestry
2009-09-29merge ↵Steven Bennetts
https://svn.aws.productengine.com/secondlife/export-from-ll/viewer-2-0@1830 https://svn.aws.productengine.com/secondlife/pe/stable-2@1839 -> viewer-2.0.0-3 JIRAS: EXT-96 EXT-204 EXT-312 EXT-334 EXT-479 EXT-498 EXT-514 EXT-637 EXT-647 EXT-746 EXT-748 EXT-749 EXT-757 EXT-789 EXT-794 EXT-808 EXT-817 EXT-823 EXT-831 EXT-834 EXT-837 EXT-844 EXT-848 EXT-862 EXT-876 EXT-896 EXT-897 EXT-898 EXT-899 EXT-910 EXT-912 EXT-918 EXT-921 EXT-925 EXT-926 EXT-928 EXT-930 EXT-931 EXT-935 EXT-938 EXT-939 EXT-952 EXT-985 EXT-986 EXT-992 EXT-994 EXT-995 EXT-996 EXT-997 EXT-998 EXT-1001 EXT-1004 EXT-1010 EXT-1012 EXT-1016 EXT-1018 EXT-1020 EXT-1028 EXT-1041 EXT-1044 EXT-1051 EXT-1052 EXT-1061 EXT-1069 EXT-1071 EXT-1074 EXT-1075 EXT-1076 EXT-1078 EXT-1080 EXT-1081 EXT-1082 EXT-1083 EXT-1085 EXT-1092 EXT-1093 EXT-1099 EXT-1100 EXT-1101 EXT-1104 EXT-1106 EXT-1111 EXT-1113 EXT-1114 EXT-1115 EXT-1116 EXT-1118 EXT-1119 EXT-1129 EXT-1132 EXT-1135 EXT-1138 EXT-1142 EXT-1161 EXT-1162 EXT-1178 EXT-1180 * NEW DEVELOPMENT: * EXT-898 - Add dock/undock support for camera and movement controls * Avatar list changes * Bottom bar changes: menu, docking, visibility * Camera changes * Camera & Movement Floaters * Dockable Floaters (LLDockableFloater) * Removed LLListCtrl * Toast / Notification changes: signal / destruction changes, ordering * Nearby chat input should display active voice indicator QA NOTES: * Message Well Window is ready to be tested for regression & matching the spec. * Verify Group List Item L&F * Verify All tabs in People Panel * Verify that Picks behavior is not changed
2009-09-09merge -r132032-132812 ↵Richard Nelson
svn+ssh://svn.lindenlab.com/svn/linden/branches/gooey/gooey-1
2009-03-13svn merge -r114093:114412 ↵Christian Goetze
svn+ssh://svn.lindenlab.com/svn/linden/branches/featurettes/featurettes-batch5-merge Melinda (coco): 5th and final batch of featurettes. My work here is done.
2009-01-08Result of svn merge -r107256:107258 ↵Aaron Brashears
svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165
2009-01-05svn merge -r106715:HEAD ↵Kent Quirk
svn+ssh://svn.lindenlab.com/svn/linden/branches/q/notifications-merge-r106715 . QAR-1149 -- Final merge of notifications to trunk.
2008-12-02QAR-1040 maint-viewer-11 + OpenAL combo mergemeAdam Moss
svn merge -c104451 svn+ssh://svn.lindenlab.com/svn/linden/branches/moss/openal-maint-viewer-11-combo-r104448
2008-08-12QAR-767 Combined maint-render-7 and maint-viewer-9 mergeSteven Bennetts
merge release@93398 viewer-merge-1@94007 -> release dataserver-is-deprecated
2008-07-23svn merge -r92720:92721 ↵Karl Steifvater
svn+ssh://svn.lindenlab.com/svn/linden/branches/uv-picking-merge QAR-698 / DEV-9985 add touch "position" information to touch-events in LSL
2008-07-22svn merge -r92710:92709 svn+ssh://svn.lindenlab.com/svn/linden/release --> ↵Josh Bell
release Undo r92710 (for QAR-698) - went straight into release instead of a side branch for validation.
2008-07-22merge uv-picking branch.Karl Steifvater
svn merge -r92602:92632 svn+ssh://svn.lindenlab.com/svn/linden/branches/uv-picking-4
2008-06-26QAR-628 merge string-cleanup-5 -r 90476:90508 -> releaseSteven Bennetts
dataserver-is-deprecated
2008-04-01merge release@83343 skinning-1-merge@83714 -> releaseSteven Bennetts
QAR-424
2007-10-04Result of svn merge -r71162:71205 ↵Aaron Brashears
svn+ssh://svn/svn/linden/branches/new-license into release. only changes files which are not deployed or the comments section of code.
2007-01-02Print done when done.James Cook