• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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