/* Copyright 2003-2005 ROBLOX Corporation, All Rights Reserved */ #pragma once #include "Tool/GroupDragTool.h" #include "Tool/ICancelableTool.h" #include "Tool/DragUtilities.h" namespace RBX { class MegaDragger; extern const char* const sGroupDropTool; class GroupDropTool : public Named , public ICancelableTool { private: typedef Named Super; public: ///////////////////////////////////////////////////////// // MouseCommand // ///*override*/ void onMouseDelta(const shared_ptr& inputObject); /*override*/ shared_ptr onKeyDown(const shared_ptr& inputObject); /*override*/ shared_ptr onMouseDown(const shared_ptr& inputObject); /*override*/ shared_ptr onMouseUp(const shared_ptr& inputObject); /*override*/const std::string getCursorName() const {return MouseCommand::isAdvArrowToolEnabled() ? "advClosed-hand" : "DropCursor";} ///////////////////////////////////////////////////////// // ICancelableTool // /*override*/ shared_ptr onCancelOperation(); GroupDropTool( PartInstance* mousePart, const PartArray& partArray, Workspace* workspace, bool suppressPartsAlign = false); ~GroupDropTool(); }; } // namespace RBX