#include "rack.hpp" using namespace rack; namespace rack_plugin_rcm { namespace SongRoll { struct SongRollModule; struct SongRollWidget; struct ModuleDragType { SongRollWidget* widget; SongRollModule* module; ModuleDragType(SongRollWidget* widget, SongRollModule* module); virtual ~ModuleDragType(); virtual void onDragMove(EventDragMove& e) = 0; }; struct StandardModuleDragging : public ModuleDragType { StandardModuleDragging(SongRollWidget* widget, SongRollModule* module); virtual ~StandardModuleDragging(); void onDragMove(EventDragMove& e) override; }; struct ColourDragging : public ModuleDragType { ColourDragging(SongRollWidget* widget, SongRollModule* module); virtual ~ColourDragging(); void onDragMove(EventDragMove& e) override; }; } } // namespace rack_plugin_rcm