Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(655)

Side by Side Diff: chrome/browser/extensions/extension_bookmark_manager_api.h

Issue 8374023: Move bookmarks extension api implementation to bookmarks dir (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix deps, rebase Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2011 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_EXTENSIONS_EXTENSION_BOOKMARK_MANAGER_API_H_
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARK_MANAGER_API_H_
7 #pragma once
8
9 #include "chrome/browser/bookmarks/bookmark_node_data.h"
10 #include "chrome/browser/extensions/extension_bookmarks_module.h"
11 #include "chrome/browser/extensions/extension_function.h"
12 #include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h"
13
14 struct BookmarkNodeData;
15 class Profile;
16 class TabContentsWrapper;
17
18 namespace base {
19 class ListValue;
20 }
21
22 // Class that handles the chrome.experimental.bookmarkManager events.
23 class ExtensionBookmarkManagerEventRouter
24 : public BookmarkTabHelper::BookmarkDrag {
25 public:
26 ExtensionBookmarkManagerEventRouter(Profile* profile,
27 TabContentsWrapper* tab);
28 virtual ~ExtensionBookmarkManagerEventRouter();
29
30 // RenderViewHostDelegate::BookmarkDrag interface
31 virtual void OnDragEnter(const BookmarkNodeData& data);
32 virtual void OnDragOver(const BookmarkNodeData& data);
33 virtual void OnDragLeave(const BookmarkNodeData& data);
34 virtual void OnDrop(const BookmarkNodeData& data);
35
36 // The bookmark drag and drop data. This gets set after a drop was done on
37 // the page. This returns NULL if no data is available.
38 const BookmarkNodeData* GetBookmarkNodeData();
39
40 // Clears the drag and drop data.
41 void ClearBookmarkNodeData();
42
43 private:
44 // Helper to actually dispatch an event to extension listeners.
45 void DispatchEvent(const char* event_name, const base::ListValue* args);
46
47 void DispatchDragEvent(const BookmarkNodeData& data, const char* event_name);
48
49 Profile* profile_;
50 TabContentsWrapper* tab_;
51 BookmarkNodeData bookmark_drag_data_;
52
53 DISALLOW_COPY_AND_ASSIGN(ExtensionBookmarkManagerEventRouter);
54 };
55
56 class ClipboardBookmarkManagerFunction : public BookmarksFunction {
57 protected:
58 bool CopyOrCut(bool cut);
59 };
60
61 class CopyBookmarkManagerFunction : public ClipboardBookmarkManagerFunction {
62 public:
63 virtual bool RunImpl() OVERRIDE;
64
65 private:
66 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.copy");
67 };
68
69 class CutBookmarkManagerFunction : public ClipboardBookmarkManagerFunction {
70 public:
71 virtual bool RunImpl() OVERRIDE;
72
73 private:
74 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.cut");
75 };
76
77 class PasteBookmarkManagerFunction : public BookmarksFunction {
78 public:
79 virtual bool RunImpl() OVERRIDE;
80
81 private:
82 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.paste");
83 };
84
85 class CanPasteBookmarkManagerFunction : public BookmarksFunction {
86 public:
87 virtual bool RunImpl() OVERRIDE;
88
89 private:
90 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.canPaste");
91 };
92
93 class SortChildrenBookmarkManagerFunction : public BookmarksFunction {
94 public:
95 virtual bool RunImpl() OVERRIDE;
96
97 private:
98 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.sortChildren");
99 };
100
101 class BookmarkManagerGetStringsFunction : public AsyncExtensionFunction {
102 public:
103 virtual bool RunImpl() OVERRIDE;
104
105 private:
106 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.getStrings");
107 };
108
109 class StartDragBookmarkManagerFunction : public BookmarksFunction {
110 public:
111 virtual bool RunImpl() OVERRIDE;
112
113 private:
114 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.startDrag");
115 };
116
117 class DropBookmarkManagerFunction : public BookmarksFunction {
118 public:
119 virtual bool RunImpl() OVERRIDE;
120
121 private:
122 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.drop");
123 };
124
125 class GetSubtreeBookmarkManagerFunction : public BookmarksFunction {
126 public:
127 virtual bool RunImpl() OVERRIDE;
128
129 private:
130 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.getSubtree");
131 };
132
133 class CanEditBookmarkManagerFunction : public BookmarksFunction {
134 public:
135 virtual bool RunImpl() OVERRIDE;
136
137 private:
138 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.canEdit");
139 };
140
141 class RecordLaunchBookmarkFunction : public BookmarksFunction {
142 public:
143 virtual bool RunImpl() OVERRIDE;
144
145 private:
146 DECLARE_EXTENSION_FUNCTION_NAME("experimental.bookmarkManager.recordLaunch")
147 };
148
149 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARK_MANAGER_API_H_
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_bookmark_helpers.cc ('k') | chrome/browser/extensions/extension_bookmark_manager_api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698