1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_UI_BOOKMARKS_BOOKMARK_DRAG_DROP_H_ 6 #define CHROME_BROWSER_UI_BOOKMARKS_BOOKMARK_DRAG_DROP_H_ 7 8 #include <vector> 9 10 #include "ui/base/dragdrop/drag_drop_types.h" 11 #include "ui/gfx/native_widget_types.h" 12 13 class BookmarkNode; 14 class Profile; 15 16 namespace bookmarks { 17 struct BookmarkNodeData; 18 } 19 20 namespace chrome { 21 22 // Starts the process of dragging a folder of bookmarks. 23 void DragBookmarks(Profile* profile, 24 const std::vector<const BookmarkNode*>& nodes, 25 gfx::NativeView view, 26 ui::DragDropTypes::DragEventSource source); 27 28 // Drops the bookmark nodes that are in |data| onto |parent_node| at |index|. 29 // |copy| indicates the source operation: if true then the bookmarks in |data| 30 // are copied, otherwise they are moved if they belong to the same |profile|. 31 // Returns the drop type used. 32 int DropBookmarks(Profile* profile, 33 const bookmarks::BookmarkNodeData& data, 34 const BookmarkNode* parent_node, 35 int index, 36 bool copy); 37 38 } // namespace chrome 39 40 #endif // CHROME_BROWSER_UI_BOOKMARKS_BOOKMARK_DRAG_DROP_H_ 41