OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARKS_MODULE_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARKS_MODULE_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARKS_MODULE_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARKS_MODULE_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <list> | 9 #include <list> |
10 #include <set> | 10 #include <set> |
11 #include <string> | 11 #include <string> |
12 | 12 |
13 #include "base/compiler_specific.h" | 13 #include "base/compiler_specific.h" |
14 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
15 #include "chrome/browser/bookmarks/bookmark_model_observer.h" | 15 #include "chrome/browser/bookmarks/bookmark_model_observer.h" |
16 #include "chrome/browser/extensions/extension_function.h" | 16 #include "chrome/browser/extensions/extension_function.h" |
17 #include "chrome/browser/ui/shell_dialogs.h" | 17 #include "chrome/browser/ui/shell_dialogs.h" |
18 #include "content/common/notification_observer.h" | 18 #include "content/common/notification_observer.h" |
19 #include "content/common/notification_registrar.h" | 19 #include "content/common/notification_registrar.h" |
20 | 20 |
21 class FilePath; | 21 class FilePath; |
22 | 22 |
| 23 namespace base { |
| 24 class ListValue; |
| 25 } |
| 26 |
23 // Observes BookmarkModel and then routes the notifications as events to | 27 // Observes BookmarkModel and then routes the notifications as events to |
24 // the extension system. | 28 // the extension system. |
25 class ExtensionBookmarkEventRouter : public BookmarkModelObserver { | 29 class ExtensionBookmarkEventRouter : public BookmarkModelObserver { |
26 public: | 30 public: |
27 explicit ExtensionBookmarkEventRouter(BookmarkModel* model); | 31 explicit ExtensionBookmarkEventRouter(BookmarkModel* model); |
28 virtual ~ExtensionBookmarkEventRouter(); | 32 virtual ~ExtensionBookmarkEventRouter(); |
29 | 33 |
30 void Init(); | 34 void Init(); |
31 | 35 |
32 // BookmarkModelObserver: | 36 // BookmarkModelObserver: |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 virtual bool RunImpl() OVERRIDE; | 140 virtual bool RunImpl() OVERRIDE; |
137 | 141 |
138 private: | 142 private: |
139 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.search") | 143 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.search") |
140 }; | 144 }; |
141 | 145 |
142 class RemoveBookmarkFunction : public BookmarksFunction { | 146 class RemoveBookmarkFunction : public BookmarksFunction { |
143 public: | 147 public: |
144 // Returns true on successful parse and sets invalid_id to true if conversion | 148 // Returns true on successful parse and sets invalid_id to true if conversion |
145 // from id string to int64 failed. | 149 // from id string to int64 failed. |
146 static bool ExtractIds(const ListValue* args, std::list<int64>* ids, | 150 static bool ExtractIds(const base::ListValue* args, std::list<int64>* ids, |
147 bool* invalid_id); | 151 bool* invalid_id); |
148 // BookmarksFunction: | 152 // BookmarksFunction: |
149 virtual bool RunImpl() OVERRIDE; | 153 virtual bool RunImpl() OVERRIDE; |
150 virtual void GetQuotaLimitHeuristics( | 154 virtual void GetQuotaLimitHeuristics( |
151 std::list<QuotaLimitHeuristic*>* heuristics) const; | 155 std::list<QuotaLimitHeuristic*>* heuristics) const; |
152 | 156 |
153 private: | 157 private: |
154 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.remove") | 158 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.remove") |
155 }; | 159 }; |
156 | 160 |
157 class RemoveTreeBookmarkFunction : public RemoveBookmarkFunction { | 161 class RemoveTreeBookmarkFunction : public RemoveBookmarkFunction { |
158 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.removeTree") | 162 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.removeTree") |
159 }; | 163 }; |
160 | 164 |
161 class CreateBookmarkFunction : public BookmarksFunction { | 165 class CreateBookmarkFunction : public BookmarksFunction { |
162 public: | 166 public: |
163 virtual void GetQuotaLimitHeuristics( | 167 virtual void GetQuotaLimitHeuristics( |
164 std::list<QuotaLimitHeuristic*>* heuristics) const; | 168 std::list<QuotaLimitHeuristic*>* heuristics) const; |
165 // BookmarksFunction: | 169 // BookmarksFunction: |
166 virtual bool RunImpl() OVERRIDE; | 170 virtual bool RunImpl() OVERRIDE; |
167 | 171 |
168 private: | 172 private: |
169 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.create") | 173 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.create") |
170 }; | 174 }; |
171 | 175 |
172 class MoveBookmarkFunction : public BookmarksFunction { | 176 class MoveBookmarkFunction : public BookmarksFunction { |
173 public: | 177 public: |
174 static bool ExtractIds(const ListValue* args, std::list<int64>* ids, | 178 static bool ExtractIds(const base::ListValue* args, std::list<int64>* ids, |
175 bool* invalid_id); | 179 bool* invalid_id); |
176 virtual void GetQuotaLimitHeuristics( | 180 virtual void GetQuotaLimitHeuristics( |
177 std::list<QuotaLimitHeuristic*>* heuristics) const; | 181 std::list<QuotaLimitHeuristic*>* heuristics) const; |
178 // BookmarksFunction: | 182 // BookmarksFunction: |
179 virtual bool RunImpl() OVERRIDE; | 183 virtual bool RunImpl() OVERRIDE; |
180 | 184 |
181 private: | 185 private: |
182 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.move") | 186 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.move") |
183 }; | 187 }; |
184 | 188 |
185 class UpdateBookmarkFunction : public BookmarksFunction { | 189 class UpdateBookmarkFunction : public BookmarksFunction { |
186 public: | 190 public: |
187 static bool ExtractIds(const ListValue* args, std::list<int64>* ids, | 191 static bool ExtractIds(const base::ListValue* args, std::list<int64>* ids, |
188 bool* invalid_id); | 192 bool* invalid_id); |
189 virtual void GetQuotaLimitHeuristics( | 193 virtual void GetQuotaLimitHeuristics( |
190 std::list<QuotaLimitHeuristic*>* heuristics) const; | 194 std::list<QuotaLimitHeuristic*>* heuristics) const; |
191 virtual bool RunImpl(); | 195 virtual bool RunImpl(); |
192 private: | 196 private: |
193 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.update") | 197 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.update") |
194 }; | 198 }; |
195 | 199 |
196 class BookmarksIOFunction : public BookmarksFunction, | 200 class BookmarksIOFunction : public BookmarksFunction, |
197 public SelectFileDialog::Listener { | 201 public SelectFileDialog::Listener { |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 // BookmarkManagerIOFunction: | 235 // BookmarkManagerIOFunction: |
232 virtual bool RunImpl() OVERRIDE; | 236 virtual bool RunImpl() OVERRIDE; |
233 virtual void FileSelected(const FilePath& path, int index, void* params) | 237 virtual void FileSelected(const FilePath& path, int index, void* params) |
234 OVERRIDE; | 238 OVERRIDE; |
235 | 239 |
236 private: | 240 private: |
237 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.export"); | 241 DECLARE_EXTENSION_FUNCTION_NAME("bookmarks.export"); |
238 }; | 242 }; |
239 | 243 |
240 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARKS_MODULE_H_ | 244 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_BOOKMARKS_MODULE_H_ |
OLD | NEW |