drag-n-drop to canvas from region list works
[ardour.git] / libs / gtkmm2ext / gtkmm2ext / dndtreeview.h
index bc7a2df10f431ae5a07751799147bb0a8fc93c0a..d1c2bc4659fabb4ed981ce9a9e5d306bd13bf5f5 100644 (file)
@@ -16,6 +16,19 @@ class DnDTreeView : public Gtk::TreeView
   public:
        DnDTreeView ();
        ~DnDTreeView() {}
+
+       /* this is the structure pointed to if add_object_drag() is called
+          and a drop happens on a destination which has declared itself
+          willing to accept a target of the type named in the call
+          to add_object_drag().
+       */
+       
+       struct SerializedObjectPointers {
+           uint32_t size;
+           uint32_t cnt;
+           char     type[32];
+           void*    ptr[0];
+       };
        
        void add_drop_targets (std::list<Gtk::TargetEntry>&);
        void add_object_drag (int column, std::string type_name);
@@ -51,13 +64,6 @@ class DnDTreeView : public Gtk::TreeView
        Gdk::DragAction             suggested_action;
        int                         data_column;
        
-       struct SerializedObjectPointers {
-           uint32_t size;
-           uint32_t cnt;
-           char     type[32];
-           void*    ptr[0];
-       };
-       
        SerializedObjectPointers* serialize_pointers (Glib::RefPtr<Gtk::TreeModel> m, 
                                                      Gtk::TreeSelection::ListHandle_Path*,
                                                      Glib::ustring type);