/* Copyright 2003-2005 ROBLOX Corporation, All Rights Reserved */ #pragma once #include "V8DataModel/MouseCommand.h" #include "Tool/LuaDragger.h" #include namespace RBX { class PartInstance; extern const char* const sLuaDragTool; class LuaDragTool : public Named { private: boost::shared_ptr luaDragger; boost::weak_ptr selectIfNoDrag; ///////////////////////////////////////////////////////// // MouseCommand // /*override*/ void onMouseIdle(const shared_ptr& inputObject); /*override*/ void onMouseMove(const shared_ptr& inputObject); /*override*/ shared_ptr onMouseUp(const shared_ptr& inputObject); /*override*/ const std::string getCursorName() const; /*override*/ shared_ptr onKeyDown(const shared_ptr& inputObject); public: /*override*/ shared_ptr onMouseDown(const shared_ptr& inputObject); LuaDragTool( PartInstance* mousePart, const Vector3& hitPointWorld, const std::vector >& partArray, Workspace* workspace, shared_ptr selectIfNoDrag); ~LuaDragTool(); }; } // namespace RBX