1 #ifndef FILEZILLA_INTERFACE_DRAGDROPMANAGER_HEADER 2 #define FILEZILLA_INTERFACE_DRAGDROPMANAGER_HEADER 3 4 // wxWidgets doesn't provide any means to check on the type of objects 5 // while an object hasn't been dropped yet and is still being moved around 6 // At least on Windows, that appears to be a limitation of the native drag 7 // and drop system. 8 9 // As such, keep track on the objects. 10 11 #include "serverdata.h" 12 13 class CDragDropManager final 14 { 15 public: Get()16 static CDragDropManager* Get() { return m_pDragDropManager; } 17 18 static CDragDropManager* Init(); 19 void Release(); 20 21 const wxWindow* pDragSource; 22 const wxWindow* pDropTarget; 23 24 CLocalPath localParent; 25 26 Site site; 27 CServerPath remoteParent; 28 29 protected: 30 CDragDropManager(); 31 virtual ~CDragDropManager() = default; 32 33 static CDragDropManager* m_pDragDropManager; 34 }; 35 36 #endif 37