summaryrefslogtreecommitdiff
path: root/shared/dragAndDrop.h
diff options
context:
space:
mode:
authorDaniel Wilhelm <daniel@wili.li>2014-04-18 17:00:17 +0200
committerDaniel Wilhelm <daniel@wili.li>2014-04-18 17:00:17 +0200
commitfd0853d2623dd278b08288331ed42e3be59252fb (patch)
treea7645daeaef8bdbed064faf4eb88e72cee58726c /shared/dragAndDrop.h
parent2.1 (diff)
downloadFreeFileSync-fd0853d2623dd278b08288331ed42e3be59252fb.tar.gz
FreeFileSync-fd0853d2623dd278b08288331ed42e3be59252fb.tar.bz2
FreeFileSync-fd0853d2623dd278b08288331ed42e3be59252fb.zip
2.2
Diffstat (limited to 'shared/dragAndDrop.h')
-rw-r--r--shared/dragAndDrop.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/shared/dragAndDrop.h b/shared/dragAndDrop.h
new file mode 100644
index 00000000..a8c7561a
--- /dev/null
+++ b/shared/dragAndDrop.h
@@ -0,0 +1,63 @@
+#ifndef DRAGANDDROP_H_INCLUDED
+#define DRAGANDDROP_H_INCLUDED
+
+#include <wx/event.h>
+
+class wxWindow;
+class wxDirPickerCtrl;
+class wxComboBox;
+class wxTextCtrl;
+class wxString;
+class FFSFileDropEvent;
+class wxCommandEvent;
+class wxFileDirPickerEvent;
+
+
+namespace FreeFileSync
+{
+ //add drag and drop functionality, coordinating a wxWindow, wxDirPickerCtrl, and wxComboBox/wxTextCtrl
+
+ class DragDropOnMainDlg : private wxEvtHandler
+ {
+ public:
+ DragDropOnMainDlg(wxWindow* dropWindow1,
+ wxWindow* dropWindow2,
+ wxDirPickerCtrl* dirPicker,
+ wxComboBox* dirName);
+
+ virtual ~DragDropOnMainDlg() {}
+
+ virtual bool AcceptDrop(const wxString& dropName) = 0; //return true if drop should be processed
+
+ private:
+ void OnFilesDropped(FFSFileDropEvent& event);
+ void OnWriteDirManually(wxCommandEvent& event);
+ void OnDirSelected(wxFileDirPickerEvent& event);
+
+ const wxWindow* dropWindow1_;
+ const wxWindow* dropWindow2_;
+ wxDirPickerCtrl* dirPicker_;
+ wxComboBox* dirName_;
+ };
+
+
+ class DragDropOnDlg: private wxEvtHandler
+ {
+ public:
+ DragDropOnDlg(wxWindow* dropWindow,
+ wxDirPickerCtrl* dirPicker,
+ wxTextCtrl* dirName);
+
+ private:
+ void OnFilesDropped(FFSFileDropEvent& event);
+ void OnWriteDirManually(wxCommandEvent& event);
+ void OnDirSelected(wxFileDirPickerEvent& event);
+
+ const wxWindow* dropWindow_;
+ wxDirPickerCtrl* dirPicker_;
+ wxTextCtrl* dirName_;
+ };
+}
+
+
+#endif // DRAGANDDROP_H_INCLUDED
bgstack15